home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / ab20 / ab20_archive / languages / assembly / powervisor_113.lzh / docs / CommandReference < prev    next >
Text File  |  1992-02-14  |  149KB  |  4,798 lines

  1. *----------------------*
  2. * Reference : Commands * Fri Feb 14 10:26:50 1992
  3. *----------------------*
  4.  
  5.  
  6. ============================== Introduction ==================================
  7.  
  8. This reference file contains all commands. Functions are not in this file.
  9.  
  10.  
  11. Note that some commands have a return value. When this is the case the
  12. syntax is the following :
  13.    <returncode> <- COMMAND <arguments> ...
  14.  
  15. Note that this is NOT the way to use the command in PowerVisor. To use
  16. the returncode of a command you must use the group operator :
  17.    < retcode={COMMAND <arguments> ...} <enter>
  18.  
  19.  
  20. Some commands also return something in the 'rc' variable. The syntax is
  21. as follows :
  22.    RC,<returncode> <- COMMAND <arguments> ...
  23.  
  24.  
  25. Or if something is returned in the 'input' variable :
  26.    INPUT,<returncode> <- COMMAND <arguments> ...
  27.  
  28.  
  29. In all other cases the syntax is as follows :
  30.    COMMAND <arguments> ...
  31.  
  32.  
  33. COMMAND is a sequence of characters. All uppercase characters represent
  34. the minimum sequence you need before PowerVisor recognizes the command.
  35. If you want to ³abbreviate a command, you must at least use the uppercase
  36. characters.
  37.  
  38.  
  39. ================================== event =====================================
  40.  
  41.    EVent <class> <subclass> <code> <qualifier> <x> <y>
  42.  
  43.  
  44. Add an ²input event to the ³input event chain. This command is most useful
  45. in ¹macros and in ¹ARexx.
  46. Note that you if you want to use an EventAddress for a specific event,
  47. you can split this event address in two parts and supply them instead
  48. of <x> and <y>.
  49.  
  50. Possible class values :
  51.  
  52.    NULL           0
  53.    RAWKEY         1
  54.    RAWMOUSE       2
  55.    EVENT          3
  56.    POINTERPOS     4
  57.    TIMER          6
  58.    GADGETDOWN     7
  59.    GADGETUP       8
  60.    REQUESTER      9
  61.    MENULIST       10
  62.    CLOSEWINDOW    11
  63.    SIZEWINDOW     12
  64.    REFRESHWINDOW  13
  65.    NEWPREFS       14
  66.    DISKREMOVED    15
  67.    DISKINSERTED   16
  68.    ACTIVEWINDOW   17
  69.    INACTIVEWINDOW 18
  70.    NEWPOINTERPOS  19    (AmigaDOS 2.0 only)
  71.    MENUHELP       20    (AmigaDOS 2.0 only)
  72.    CHANGEWINDOW   21    (AmigaDOS 2.0 only)
  73.  
  74. Possible subclass values :
  75.  
  76.    For class NEWPOINTERPOS :
  77.  
  78.       COMPATIBLE  0
  79.       PIXEL       1
  80.       TABLET      2
  81.  
  82. Possible code values :
  83.  
  84.    For class RAWKEY :
  85.  
  86.       UP_PREFIX         $80
  87.       KEY_CODE_FIRST    $00
  88.       KEY_CODE_LAST     $77
  89.       COMM_CODE_FIRST   $78
  90.       COMM_CODE_LAST    $7f
  91.  
  92.    For class RAWMOUSE :
  93.  
  94.       LBUTTON           $68
  95.       RBUTTON           $69
  96.       MBUTTON           $6a
  97.       NOBUTTON          $ff
  98.  
  99.    For class EVENT (AmigaDOS 2.0 only) :
  100.  
  101.       NEWACTIVE         1
  102.       NEWSIZE           2
  103.       REFRESH           3
  104.  
  105.    For class REQUESTER :
  106.  
  107.       REQCLEAR          0
  108.       REQSET            1
  109.  
  110. Possible qualifier values :
  111.  
  112.    LSHIFT         $0001
  113.    RSHIFT         $0002
  114.    CAPSLOCK       $0004
  115.    CONTROL        $0008
  116.    LALT           $0010
  117.    RALT           $0020
  118.    LCOMMAND       $0040
  119.    RCOMMAND       $0080
  120.    NUMERICPAD     $0100
  121.    REPEAT         $0200
  122.    INTERRUPT      $0400
  123.    MULTIBROADCAST $0800
  124.    MIDBUTTON      $1000
  125.    RBUTTON        $2000
  126.    LEFTBUTTON     $4000
  127.    RELATIVEMOUSE  $8000
  128.  
  129.  
  130. Related commands: attach
  131.  
  132. ================================== owner =====================================
  133.  
  134.    OWNer <address>
  135.  
  136.  
  137. This command tries to see who is the ¹owner of the address you specify.
  138. This command is not completely ready but it is safe to use.
  139.  
  140. At this moment the 'owner' command searches the ²task list to see if it
  141. belongs to a task or process. The ¹stack, ¹seglists, ²task structure,
  142. ²process structure and ²cli structure are checked. In future more
  143. checks will be made.
  144.  
  145.  
  146. Example :
  147.  
  148. < l task <enter>
  149. > Task node name      : Node     Pri StackPtr  StackS Stat Command        Acc
  150. > ---------------------------------------------------------------------------
  151. > Background Process  : 07E4F080 00  07E6D640    4096 Rdy  clock      (04) -
  152. > Background Process  : 07E28330 00  07E2D500    4096 Wait iprefs     (02) -
  153. > RexxMaster          : 07E51438 04  07E51C7A    2048 Wait            (00) -
  154. > SYS:System/CLI      : 07E45DC0 00  07E46CFE    4096 Wait            (00) -
  155. > ...
  156. > PowerSnap 1.0 by Nic: 07E629C0 05  07E6320A    2000 Wait            PROC -
  157. > Background Process  : 07E70C98 00  07E6E8EA    4096 Wait addtools   (07) -
  158. > input.device        : 07E08B22 14  07E09B28    4096 Wait            TASK -
  159. > RAM                 : 07E23BF8 0A  07E23EE6    1200 Wait            PROC -
  160. > Background Process  : 07E1F268 04  07E8BB76   12000 Run  pv         (01) -
  161.  
  162. < owner task:rexxmaster+6
  163. > Found in TCB
  164. > RexxMaster          : 07E51438 04  07E51C7A    2048 Wait            (00) -
  165.  
  166. (¹TCB is ³task control block)
  167.  
  168.  
  169. Related tutor files: LookingAtThings
  170.  
  171. ================================== speek =====================================
  172.  
  173.    <value> <- SPEEk <address>
  174.  
  175.  
  176. (only ¹68030 or ¹68040)
  177. Peek a longword from memory. <address> is a PHYSICAL address. The ²MMU tree
  178. is completely ignored.
  179.  
  180.  
  181. Example :
  182.  
  183. < speek 4 <enter>
  184. > 07E007CC , 132122572
  185.  
  186.  
  187. Related commands: mmutree spoke
  188.  
  189. Related tutor files: LookingAtThings
  190.  
  191. ================================== spoke =====================================
  192.  
  193.    SPOke <address> <value>
  194.  
  195.  
  196. (only ¹68030 or ¹68040)
  197. Poke a longword in memory. <address> is a PHYSICAL address. The ²MMU tree
  198. is completely ignored.
  199.  
  200.  
  201. Related commands: mmutree speek
  202.  
  203. Related tutor files: LookingAtThings
  204.  
  205. ================================= mmutree ====================================
  206.  
  207.    MMutree
  208.  
  209.  
  210. (only ¹68020 with ¹68851, ¹68030 or ¹68040)
  211. This command shows the current ²MMU tree (¹CRP only).
  212.  
  213. ²FC code trees are not implemented yet.
  214. 8 byte ²format pages are not implemented yet.
  215. ²indirect pages are not implemented yet.
  216.  
  217.  
  218. Example :
  219.  
  220. < mmutree <enter>
  221. > 00000000   4 BYTE (imuw)  Log: 00000000 # 00000000
  222. > 07FFF140      4 BYTE (imUw)  Log: 00000000 # 01000000
  223. > 07FFF180         PAGE   (IMUw)  Log: 00000000 # 00040000  -> 00000000
  224. > 07FFF184         PAGE   (IMUw)  Log: 00040000 # 00040000  -> 00040000
  225. > 07FFF188         PAGE   (IMUw)  Log: 00080000 # 00040000  -> 00080000
  226. > ...
  227. > 07FFF268         PAGE   (IMUw)  Log: 00E80000 # 00040000  -> 00E80000
  228. > 07FFF26C         PAGE   (IMUw)  Log: 00EC0000 # 00040000  -> 00EC0000
  229. > 07FFF270         PAGE   (iMUw)  Log: 00F00000 # 00040000  -> 00F00000
  230. > 07FFF274         PAGE   (iMUw)  Log: 00F40000 # 00040000  -> 00F40000
  231. > 07FFF278         PAGE   (iMUW)  Log: 00F80000 # 00040000  -> 07F80000
  232. > 07FFF27C         PAGE   (iMUW)  Log: 00FC0000 # 00040000  -> 07FC0000
  233. > 07FFF144      PAGE   (iMUw)  Log: 01000000 # 01000000  -> 01000000
  234. > 07FFF148      PAGE   (iMUw)  Log: 02000000 # 01000000  -> 02000000
  235. > 07FFF14C      PAGE   (iMUw)  Log: 03000000 # 01000000  -> 03000000
  236. > 07FFF150      PAGE   (iMUw)  Log: 04000000 # 01000000  -> 04000000
  237. > 07FFF154      PAGE   (iMUw)  Log: 05000000 # 01000000  -> 05000000
  238. > 07FFF158      PAGE   (iMUw)  Log: 06000000 # 01000000  -> 06000000
  239. > 07FFF15C      4 BYTE (imUw)  Log: 07000000 # 01000000
  240. > 07FFF280         INV    (imuw)  Log: 07000000 # 00040000
  241. > 07FFF284         INV    (imuw)  Log: 07040000 # 00040000
  242. > 07FFF288         INV    (imuw)  Log: 07080000 # 00040000
  243. > ...
  244. > 07FFF344         INV    (imuw)  Log: 07C40000 # 00040000
  245. > 07FFF348         INV    (imuw)  Log: 07C80000 # 00040000
  246. > 07FFF34C         INV    (imuw)  Log: 07CC0000 # 00040000
  247. > 07FFF350         PAGE   (iMUw)  Log: 07D00000 # 00040000  -> 07D00000
  248. > 07FFF354         INV    (imuw)  Log: 07D40000 # 00040000
  249. > 07FFF358         INV    (imuw)  Log: 07D80000 # 00040000
  250. > 07FFF35C         INV    (imuw)  Log: 07DC0000 # 00040000
  251. > 07FFF360         PAGE   (iMUw)  Log: 07E00000 # 00040000  -> 07E00000
  252. > 07FFF364         PAGE   (iMUw)  Log: 07E40000 # 00040000  -> 07E40000
  253. > 07FFF368         PAGE   (iMUw)  Log: 07E80000 # 00040000  -> 07E80000
  254. > 07FFF36C         PAGE   (iMUw)  Log: 07EC0000 # 00040000  -> 07EC0000
  255. > 07FFF370         PAGE   (iMUw)  Log: 07F00000 # 00040000  -> 07F00000
  256. > 07FFF374         PAGE   (iMUw)  Log: 07F40000 # 00040000  -> 07F40000
  257. > 07FFF378         PAGE   (iMUW)  Log: 07F80000 # 00040000  -> 07F80000
  258. > 07FFF37C         PAGE   (iMUW)  Log: 07FC0000 # 00040000  -> 07FC0000
  259. > 07FFF160      PAGE   (iMUw)  Log: 08000000 # 01000000  -> 08000000
  260. > 07FFF164      PAGE   (iMUw)  Log: 09000000 # 01000000  -> 09000000
  261. > 07FFF168      PAGE   (iMUw)  Log: 0A000000 # 01000000  -> 0A000000
  262. > 07FFF16C      PAGE   (iMUw)  Log: 0B000000 # 01000000  -> 0B000000
  263. > 07FFF170      PAGE   (iMUw)  Log: 0C000000 # 01000000  -> 0C000000
  264. > 07FFF174      PAGE   (iMUw)  Log: 0D000000 # 01000000  -> 0D000000
  265. > 07FFF178      PAGE   (iMUw)  Log: 0E000000 # 01000000  -> 0E000000
  266.  
  267. Some entries explained :
  268.  
  269. > 07FFF140      4 BYTE (imUw)  Log: 00000000 # 01000000
  270.  
  271.    Address for this mmu entry is 07FFF140
  272.    It describes a 4 BYTE ²page descriptor
  273.    The descriptors are not invalid (i)
  274.    The descriptors are not modified (m)
  275.    The descriptors are used (U)
  276.    The descriptors are not write protected (w)
  277.    Logical address is 00000000
  278.    The page describes 01000000 bytes of memory
  279.  
  280. > 07FFF27C         PAGE   (iMUW)  Log: 00FC0000 # 00040000  -> 07FC0000
  281.  
  282.    Address for this mmu entry is 07FFF27C
  283.    It describes a PAGE
  284.    The page is not invalid (i)
  285.    The page is modified (M)
  286.    The page is used (U)
  287.    The page is write protected (W)
  288.    Logical address is 00FC0000 (this is in pseudo ROM on an Amiga 3000)
  289.    The page describes 00040000 bytes of memory
  290.    The page is mapped to the 07FC0000 physical address (fast RAM)
  291.  
  292.  
  293. Related commands: mmuregs mmurtest mmuwtest specregs mmureset
  294.  
  295. Related tutor files: LookingAtThings
  296.  
  297. ================================ mmureset ====================================
  298.  
  299.    MMURESet
  300.  
  301.  
  302. (only ¹68020 with ¹68851, ¹68030 or ¹68040)
  303. This command resets all U and M flags in the ²MMU tree to false.
  304. You can then use the 'mmutree' command to examine which pages are
  305. modified and used.
  306.  
  307. (Note this command does not support all possible mmu tables, therefore
  308. it does not work in AmigaDOS 1.3)
  309.  
  310.  
  311. Related commands: mmutree mmuregs
  312.  
  313. Related tutor files: LookingAtThings
  314.  
  315. ================================= mmuregs ====================================
  316.  
  317.    MMURegs
  318.  
  319.  
  320. (only ¹68020 with ¹68851, ¹68030 or ¹68040)
  321. Show all special ²mmu registers (except ¹MMUSR).
  322.  
  323. If some register is not available on your Amiga, '(na)' is printed
  324. after the register name (for example, 'DRP' is only available on the
  325. 68851)
  326.  
  327.  
  328. Example :
  329.  
  330. < mmuregs <enter>
  331. > DRP  : (na)
  332. > CRP  : 000F0002   07FFF140
  333. >    L/U bit is cleared
  334. >    LIMIT = 0000000F
  335. >    DT    = Valid 4 byte
  336. >    Table address = 07FFF140
  337. > SRP  : 80000001   00000000
  338. >    L/U bit is set
  339. >    LIMIT = 00000000
  340. >    DT    = Page descriptor
  341. >    Table address = 00000000
  342. > TC   : 80F08630
  343. >    Enable address translation
  344. >    Disable Supervisor Root Pointer (SRP)
  345. >    Disable Function Code Lookup (FCL)
  346. >    System page size    = FFFF8000
  347. >    Initial shift       = 00000000
  348. >    Table Index A (TIA) = 00000008
  349. >    Table Index B (TIB) = 00000006
  350. >    Table Index C (TIC) = 00000003
  351. >    Table Index D (TID) = 00000000
  352. > TT0  : 04038207
  353. >    Log Address Base = 00000004
  354. >    Log Address Mask = 00000003
  355. >    TT register enabled
  356. >    No Cache Inhibit
  357. >    R/W set
  358. >    RWM cleared
  359. >    FC value for TT block = 00000000
  360. >    FC bits to be ignored = 00000007
  361. > TT1  : 403F8107
  362. >    Log Address Base = 00000040
  363. >    Log Address Mask = 0000003F
  364. >    TT register enabled
  365. >    No Cache Inhibit
  366. >    R/W cleared
  367. >    RWM set
  368. >    FC value for TT block = 00000000
  369. >    FC bits to be ignored = 00000007
  370.  
  371.  
  372. Related commands: mmutree mmurtest mmuwtest specregs
  373.  
  374. Related tutor files: LookingAtThings
  375.  
  376. ================================ mmurtest ====================================
  377.  
  378.    MMURTest <address>
  379.  
  380.  
  381. (only ¹68020 with ¹68851, ¹68030 or ¹68040)
  382. Test an address for read access in ²MMU tree.
  383. ¹MMUSR is dumped. (does not work yet)
  384.  
  385.  
  386. Related commands: mmutree mmuregs mmuwtest specregs
  387.  
  388. Related tutor files: LookingAtThings
  389.  
  390. ================================ mmuwtest ====================================
  391.  
  392.    MMUWtest <address>
  393.  
  394.  
  395. (only ¹68020 with ¹68851, ¹68030 or ¹68040)
  396. Test an address for write access in ²MMU tree.
  397. ¹MMUSR is dumped. (does not work yet)
  398.  
  399.  
  400. Related commands: mmutree mmuregs mmurtest specregs
  401.  
  402. Related tutor files: LookingAtThings
  403.  
  404. ================================ specregs ====================================
  405.  
  406.    SPecregs
  407.  
  408.  
  409. (only ¹68020, ¹68030 or ¹68040)
  410. Show all special 68020 ¹registers.
  411.  
  412.  
  413. Example :
  414.  
  415. < specregs <enter>
  416. > MSP  : 560F5B16
  417. > ISP  : 07E02228
  418. > USP  : 07E8BC64
  419. > SFC  : 00000007
  420. > DFC  : 00000007
  421. > VBR  : 00000000
  422. > CACR : 00002111
  423. >    Write Allocate set
  424. >    Disable Data Burst
  425. >    Clear Data Cache not set
  426. >    Clear Entry in Data Cache not set
  427. >    Freeze Data Cache not set
  428. >    Enable Data Cache
  429. >    Enable Instruction Burst
  430. >    Clear Instruction Cache not set
  431. >    Clear Entry in Instruction Cache not set
  432. >    Freeze Instruction Cache not set
  433. >    Enable Instruction Cache
  434. > CAAR : B8F77BED
  435.  
  436.  
  437. Related commands: mmutree mmuregs mmurtest mmuwtest
  438.  
  439. Related tutor files: LookingAtThings
  440.  
  441. ================================= setfont ====================================
  442.  
  443.    SETfont <logical window> <fontname> <fontheight>
  444.  
  445.  
  446. Set a ¹font for a ²logical window. The font must be either memory resident
  447. or available in the ¹'fonts:' directory. ²Proportional fonts are not
  448. supported.
  449.  
  450. Note that this command is only temporary and only for the contents
  451. of a logical window (the text in the logical window).
  452. If you want another default font for all PowerVisor logical windows,
  453. string gadget, size bars, ... you must use 'prefs font'.
  454.  
  455. 'setfont' uses ¹autodefault to the 'lwin' list for the first argument.
  456.  
  457. There are seven ³standard logical windows in the current release of
  458. PowerVisor, (you can open more if you want) :
  459.  
  460.    Rexx     : rexx output window
  461.    PPrint   : PortPrint output window
  462.    Refresh  : refresh window
  463.    Debug    : debugging window
  464.    Extra    : extra window
  465.    Main     : main window
  466.    Source   : source window for source level debugger
  467.  
  468. See the 'lwin' list for all available logical windows.
  469. All these logical windows can use another font.
  470.  
  471.  
  472. Example :
  473.  
  474. If the 'Extra' logical window is not already open, open it with :
  475.  
  476. < xwin <enter>
  477.  
  478. < setfont extra topaz.font 9 <enter>
  479.  
  480. Try the new font :
  481.  
  482. < on extra list task <enter>
  483. > ... (in topaz 9)
  484.  
  485.  
  486. Related commands: xwin dwin swin rwin awin owin openlw closelw
  487.  
  488. Related lists: lwin
  489.  
  490. Related tutor files: Screen
  491.  
  492. ================================= colrow =====================================
  493.  
  494.    COLRow <logical window> <columns> <rows>
  495.  
  496.  
  497. Set the ³number of columns and rows (in characters) for the specified
  498. ²logical window. If <columns> or <rows> are equal to -1, PowerVisor will
  499. ¹scale them automatically to the maximum size available. The disadvantage
  500. of this is that the logical window is cleared everytime the visible size
  501. (in the direction that is -1) changes.
  502. The number of columns and rows can be as big as you want. If the size is
  503. to big you can ¹scroll in the logical window using the following ¹keys
  504. (in combination with the ¹Left-Alt key) on the numeric keypad :
  505.  
  506.    8 (arrow up)      scroll logical window one line up
  507.    2 (arrow down)    scroll one line down
  508.    6 (arrow right)   scroll one column right
  509.    4 (arrow left)    scroll one column left
  510.    9 (PgUp)          scroll 5 lines up
  511.    3 (PgDn)          scroll 5 lines down
  512.    7 (Home)          scroll to the top left position
  513.    1 (End)           scroll to the bottom left position
  514.    5                 scroll to the right as far as you can
  515.  
  516. If there are more logical windows open on the screen you can choose which
  517. one you want to scroll by pressing the ¹<Tab> key. The ²active window is
  518. the logical window with the full (blue for two bitplanes or black for one
  519. bitplane) ²status bar. The other logical windows have an ³empty status bar.
  520. Note that the ³active logical window is not the same as the ³current logical
  521. window. The active logical window is only used to indicate in which window
  522. you can scroll with the keys. The current logical window is the window that
  523. will get the output for all commands. All input is also redirected to the
  524. active logical window (see The 'Screen' tutorial file for more info).
  525.  
  526. 'colrow' uses ¹autodefault to the 'lwin' list for the first argument.
  527.  
  528. See the 'lwin' list for all available logical windows.
  529. There are seven ³standard logical windows :
  530.  
  531.    Rexx     : ARexx output window
  532.    PPrint   : PortPrint output window
  533.    Refresh  : refresh window
  534.    Debug    : debugging window
  535.    Extra    : extra window
  536.    Main     : main window
  537.    Source   : source window for source level debugger
  538.  
  539. You can use the 'getcol' and 'getrow' functions to ask the number of
  540. rows and columns respectively that you have set with this command. If
  541. you want the real number of rows and columns (after scaling) you can
  542. use the 'cols' and 'lines' functions.
  543.  
  544. Note that you can change the <tab> key to any other key with the
  545. 'prefs' command.
  546.  
  547.  
  548. Example :
  549.  
  550.  
  551. Make the 'Main' logical window autoscalable in both directions :
  552.  
  553. < colrow main -1 -1 <enter>
  554.  
  555. You can't scroll in this logical window now, and everytime the visible
  556. size changes the window is cleared (since there is a new rescaling).
  557.  
  558.  
  559. Make the 'Main' logical window very big in both directions :
  560.  
  561. < colrow main 200 100 <enter>
  562.  
  563. (200 columns and 100 rows). Type some output on this window :
  564.  
  565. < help commands <enter>
  566. > ...
  567.  
  568. Now you can scroll using the keys explained above.
  569.  
  570. You can use the 'fit' command to scale the size back to normal (see
  571. the 'fit' command for more info).
  572.  
  573.  
  574. Related commands: fit xwin rwin dwin swin awin owin openlw closelw prefs
  575.  
  576. Related functions: getcol getrow cols lines
  577.  
  578. Related lists: lwin
  579.  
  580. Related tutor files: Screen
  581.  
  582. ================================= track ======================================
  583.  
  584.    TRACK 't' <task> | 's' | 'c' | 'l'
  585.  
  586.  
  587. With this command you can control the ²resource tracker. This resource
  588. tracker remembers all memory allocations (AllocMem, AllocVec) and
  589. all opened libraries (OpenLibrary, OldOpenLibrary). With this information
  590. you can see if the task (or process) cleans everything up.
  591. Note that you can only track resources for one task or process at a
  592. time.
  593.  
  594. 'track' uses ¹autodefault to the 'task' list for the <task> argument.
  595.  
  596.    track t     Take a task or process in the task list and start resource
  597.                tracking for that task
  598.    track s     Stop tracking and free all track information. Note that
  599.                the memory that the task forgot to free is NOT freed with
  600.                this function
  601.    track c     Stop tracking and free all track information (like 'track s')
  602.                In addition this function also clears all memory that is
  603.                not freed by the program
  604.    track l     List all memory and libraries current allocated or open
  605.  
  606.  
  607. Example :
  608.  
  609. The easiest way to start resource tracking for a program is to use 'debug n',
  610. start the program, use 'track t' to get the new task from the task list and
  611. use 'debug r' to remove the debug node and let the program continue.
  612.  
  613. < track l <enter>
  614. > 07F3211A : 07E0E1F0,00000000 dos.library
  615. > 07F3217C : 07EA5EE8,00000010
  616. > 07F33CAC : 07E5B8A0,00000000 mathieeedoubbas.library
  617. > 07F33CCC : 07EBA8A8,00000000 mathieeedoubtrans.library
  618. > 07F32ACA : 07E0ABC4,00000024 intuition.library
  619. > 07F32ADC : 07E036B0,00000024 graphics.library
  620. > 07F32AEE : 07E49820,00000024 gadtools.library
  621. > 07F32B00 : 07E00154,00000024 utility.library
  622. > 07F32B12 : 07E389E0,00000026 locale.library
  623. > 00F81CE8 : 07EBA8E8,000000AC
  624. > 00F92B5C : 07EBA8EC,000000A8 (AllocVec)
  625. > 00F81CE8 : 07EBA998,0000001C
  626. > 00FA7358 : 07EBA99C,00000018 (AllocVec)
  627. > 00FD8F90 : 07F2D0A8,000000A4
  628. > ...
  629.  
  630. The first hexadecimal number is the program counter where the library
  631. function (AllocMem, AllocVec, OpenLibrary or OldOpenLibrary) was called.
  632. The second number is the result of this library function (either the
  633. allocated memory or the opened library). The last number is the version
  634. of the library or the size of the allocated memory block. If it is a
  635. library the name of the library is printed at the end. If the memory is
  636. allocated with 'AllocVec' (AmigaDOS 2.0 only) '(AllocVec)' is printed.
  637.  
  638.  
  639. ================================== view ======================================
  640.  
  641.    VIew [<address> [<bytes>]]
  642.  
  643.  
  644. ²View memory following certain requirements. The requirements follow from
  645. the ²current taglist (which is set with 'usetag' or 'tg'). The default format
  646. is Long/Ascii combined view. You can change the format used to display
  647. the memory for a specific range of memory to something else using ¹tags.
  648. The default number of bytes to view is 320 (16 bytes * 20 lines). If
  649. you do not give an address, PowerVisor will continue the listing of
  650. memory where you stopped in a previous listing (either 'view', 'memory'
  651. or 'unasm'). Pressing <Enter> after a 'view' command also causes
  652. the listing to continue.
  653.  
  654. PowerVisor remembers the last number of bytes used with the command
  655. (and the 'memory' command) and uses this number as the new default
  656. number of <bytes> for the following 'view' (or 'memory') commands.
  657.  
  658. Use the 'addtag' command to define how a specific range of memory
  659. should be viewed.
  660.  
  661. Also see the 'LookingAtThings' tutorial chapter for more examples and details
  662. about these tags.
  663.  
  664.  
  665. Example :
  666.  
  667. First we define the memory starting on location 0 as a range of longwords :
  668.  
  669. < addtag 0 50 la <enter>
  670.  
  671. This 'addtag' command adds a definition for a range of memory. A memory
  672. range with 50 bytes starting from address 0 is defined as LA. This is
  673. Long/Ascii. This is the default, so you won't see anything special when
  674. you view that memory.
  675.  
  676. < addtag 50 50 wa <enter>
  677.  
  678. The next 50 bytes of memory (starting on address 50) are defined as WA
  679. or Word/Ascii. We can use the 'view' command to see what we have done :
  680.  
  681. < view 0 <enter>
  682.  
  683. (Note that the 'view' command has the same sort of arguments as the 'memory'
  684. command).
  685.  
  686. > 00000000: 00000000 07E007CC 00F80834 00F80B16              ...........4....
  687. > 00000010: 00F80ADA 00F80ADC 00F80ADE 00F80AE0              ................
  688. > 00000020: 00F80C00 00F80AE4 00F80AE7 00F80AE8              ................
  689. > 00000030: 00F8                                             ..
  690. > 00000032: 0AEA 00F8 0AEC 00F8 0AEE 00F8 0AF0 00F8          ................
  691. > 00000042: 0AF2 00F8 0AF4 00F8 0AF6 00F8 0AF8 00F8          ................
  692. > 00000052: 0AFA 00F8 0AFC 00F8 0AFE 00F8 0B00 00F8          ................
  693. > 00000062: 0B02                                             ..
  694. > 00000064: 00F810F4 00F81152 00F81188 00F811E6              .......R........
  695. > 00000074: 00F8127C 00F812C6 00F81310 00F80B70              ...|...........p
  696. > 00000084: 00F80B72 00F80B74 00F80B76 00F80B78              ...r...t...v...x
  697. > 00000094: 00F80B7A 00F80B7C 00F80B7E 00F80B80              ...z...|...~....
  698. > 000000A4: 00F80B82 00F80B84 00F80B86 00F80B88              ................
  699. > 000000B4: 00F80B8A 00F80B8C 00F80B8E 00F80B90              ................
  700. > 000000C4: 00F80B92 00F80B94 00F80B96 00F80B98              ................
  701. > 000000D4: 00F80B9A 00F80B9C 00F80B9E 00F80BA0              ................
  702. > 000000E4: 00F80BA2 00F80BA4 00F80BA6 00F80BA8              ................
  703. > 000000F4: 00F80BAA 00F80BAC 00F80BAE 00000000              ................
  704. > 00000104: 00000000 00000000 00000000 00000000              ................
  705. > 00000114: 00000000 00000000 00000000 00000000              ................
  706. > 00000124: 00000000 00000000 00000000 00000000              ................
  707. > 00000134: 00000000 00000000 00000000                       ............
  708.  
  709. You can see that the memory starting at location 50 is listed in Word/Ascii
  710. format.
  711.  
  712.  
  713. Related commands: addtag remtag cleartags loadtags savetags tg usetag
  714.                   checktag tags memory unasm interprete
  715.  
  716. Related functions: taglist stsize lastmem lastbytes
  717.  
  718. Related tutor files: LookingAtThings
  719.  
  720. ================================= addtag =====================================
  721.  
  722.    ADDTag <address> <bytes> <type> [<structure>]
  723.  
  724.  
  725. This command adds a tag to the ³current tag list (set with 'usetag').
  726. With this command you can define the view mode to be used for a range of
  727. memory. The 'view' command uses these tags to determine how to dump
  728. memory.
  729. The <address> is the starting address for the memory range. This range
  730. continuous for <bytes> bytes. <type> can be one of the following :
  731.  
  732.    BA       byte/ascii format
  733.    WA       word/ascii format
  734.    LA       long/ascii format (default for all memory not in tags)
  735.    AS       ascii only format
  736.    CO       code format
  737.    ST       structure format (format supported by 'addstruct')
  738.  
  739. (case is not important).
  740. Other types can be supported in future.
  741.  
  742. 'addtag' uses ¹autodefault to the 'stru' list for the fourth argument.
  743.  
  744. If your type is 'ST' you must supply an extra argument <structure>.
  745. This is the pointer to the ²structure definition you must have loaded
  746. with the 'addstruct' command. You can use the 'stsize' function to
  747. obtain the size of a ¹structure. All structure reside in the 'stru' list.
  748.  
  749. Note that tags are grouped in ²tag lists. There are 16 tag lists numbered
  750. from 0 through 15. The ³default tag list is number 0. You can use the
  751. 'usetag' or 'tg' command to switch to another tag list. All the tag commands
  752. (including 'view') only work on the current tag list.
  753.  
  754.  
  755. Example :
  756.  
  757.    see the 'view' command.
  758.  
  759.  
  760. Related commands: view remtag cleartags loadtags savetags tg usetag checktag
  761.                   tags addstruct interprete
  762.  
  763. Related functions: taglist stsize
  764.  
  765. Related lists: stru
  766.  
  767. Related tutor files: LookingAtThings
  768.  
  769. ================================ loadtags ====================================
  770.  
  771.    LOADTags <file> <base>
  772.  
  773.  
  774. Load tags from a file to the ³current tag list. All ¹tags in the file are
  775. added to the tags in the current tag list. When an old tag collides with a
  776. new tag, the old tag will be removed (two tags collide when they use the same
  777. address).
  778.  
  779. If the tagfile contains structures (type 'ST') you must load these
  780. structure in memory (with 'addstruct') before loading the tags. Otherwise
  781. the type of the tag will be changed to Long/Ascii ('LA') and you will get
  782. a warning :
  783.  
  784.    'Warning ! Unknown structure types have been changed to LA !'
  785.  
  786.  
  787. <base> is a pointer that you can use to relocate tags. A tag file also
  788. contains a base. When the base in the tag file and <base> are equal the
  789. tags will be on the same position as when they were saved. <base> is
  790. useful when you want to pause your work and have to reloade them
  791. at another time. Since you can't always make sure that things are on
  792. the same position you will have to load the tags relative to some
  793. base.
  794.  
  795.  
  796. Related commands: savetags addtag remtag cleartags view tg usetag checktag
  797.                   tags addstruct
  798.  
  799. Related functions: taglist
  800.  
  801. Related tutor files: LookingAtThings
  802.  
  803. ================================ savetags ====================================
  804.  
  805.    SAVETags <file> <base>
  806.  
  807.  
  808. Save tags in the ³current tag list to a file.
  809. <base> is simply saved in the file. You can use <base> later on when
  810. you reload the tags to relocate them.
  811.  
  812.  
  813. Related commands: loadtags addtag remtag cleartags view tg usetag checktag
  814.                   tags
  815.  
  816. Related functions: taglist
  817.  
  818. Related tutor files: LookingAtThings
  819.  
  820. ================================ cleartags ===================================
  821.  
  822.    CLEARTags
  823.  
  824.  
  825. Clear all tags in the ³current tag list.
  826.  
  827.  
  828. Related commands: remtag addtag loadtags savetags tags usetag tg checktag
  829.                   view
  830.  
  831. Related functions: taglist
  832.  
  833. Related tutor files: LookingAtThings
  834.  
  835. ================================= remtag =====================================
  836.  
  837.    REMTag <address>
  838.  
  839.  
  840. Remove the range of memory starting with <address> from the ³current tag list.
  841. If the range does not exist this command does nothing.
  842.  
  843.  
  844. Example :
  845.  
  846. < addtag 1000 50 as <enter>
  847. < ...
  848. < remtag 1000 <enter>
  849.  
  850.  
  851. Related commands: addtag cleartags loadtags savetags tags usetag tg checktag
  852.                   view
  853.  
  854. Related functions: taglist
  855.  
  856. Related tutor files: LookingAtThings
  857.  
  858. ================================== tags ======================================
  859.  
  860.    TAGs
  861.  
  862.  
  863. List all ¹tags in the ³current tag list.
  864.  
  865.  
  866. Related commands: addtag remtag cleartags loadtags savetags usetag tg
  867.                   checktag view
  868.  
  869. Related functions: taglist
  870.  
  871. Related tutor files: LookingAtThings
  872.  
  873. ================================ checktag ====================================
  874.  
  875.    <bytes remaining> <- CHecktag <address>
  876.  
  877.  
  878. Check if an address resides in the ³current tag list. If it is, PowerVisor
  879. will print the type of the tag list followed by the remaining number of bytes
  880. after <address> in this tag.
  881. If the address is not in the tag list, PowerVisor will print the number
  882. of bytes remaining before the next tag. If there is no next tag, PowerVisor
  883. will print $7fffffff.
  884.  
  885.  
  886. Example :
  887.  
  888. < addtag 1000 50 as <enter>
  889.  
  890. < checktag 1010 <enter>
  891. > AS 00000028,40
  892.  
  893. < checktag 900 <enter>
  894. > 00000064,100
  895.  
  896. < checktag 1100 <enter>
  897. > 7FFFFFFF,2147483647
  898.  
  899.  
  900. Related commands: addtag remtag tags cleartags loadtags savetags usetag tg
  901.                   view
  902.  
  903. Related functions: taglist
  904.  
  905. Related tutor files: LookingAtThings
  906.  
  907. =============================== interprete ===================================
  908.  
  909.    INTErprete <structure pointer> <struct def pointer>
  910.  
  911.  
  912. Show the contents of a ¹structure at <structure pointer> using the
  913. <struct def pointer> ²structure definition. You can load and add
  914. structure definitions with the 'addstruct' command.
  915.  
  916. All structure definitions reside in the 'stru' list.
  917.  
  918. You can also view structures using the 'view' command.
  919.  
  920. 'Interprete' uses ¹autodefault to the 'stru' list for the second argument.
  921.  
  922.  
  923. Example :
  924.  
  925. Add all exec structure definitions.
  926.  
  927. < addstruct exec.pvsd <enter>
  928. > UNIT
  929. > IS
  930. > IV
  931. > ..
  932. > SS
  933. > SM
  934. > TC
  935. > ETask
  936. > StackSwapStruct
  937.  
  938. All these structure are now added to the 'stru' list.
  939. You can now use the 'interprete' command to dump the contents of
  940. a task structure (for example) :
  941.  
  942. < l task <enter>
  943. > Task node name      : Node     Pri StackPtr  StackS Stat Command        Acc
  944. > ---------------------------------------------------------------------------
  945. > Background Process  : 07E28330 00  07E2D500    4096 Wait iprefs     (02) -
  946. > RexxMaster          : 07E51438 04  07E51C7A    2048 Wait            (00) -
  947. > ...
  948. > RAM                 : 07E23BF8 0A  07E23EE6    1200 Wait            PROC -
  949. > input.device        : 07E08B22 14  07E09B28    4096 Wait            TASK -
  950. > Background Process  : 07E1F268 04  07E8B94A   12000 Run  pv         (01) -
  951.  
  952. < interprete 07E1F268 tc
  953. > FLAGS        : 00       | STATE        : 02       | IDNESTCNT    : FF
  954. > TDNESTCNT    : FE       | SIGALLOC     : FF80FFFF | SIGWAIT      : 00000020
  955. > SIGRECVD     : 20800100 | SIGEXCEPT    : 00000000 | ETask        : 80000000
  956. > EXCEPTDATA   : 00000000 | EXCEPTCODE   : 00F83AEC | TRAPDATA     : 00000000
  957. > TRAPCODE     : 07E7BE2C | SPREG        : 07E8B904 | SPLOWER      : 07E88DE8
  958. > SPUPPER      : 07E8BCC8 | MEMENTRY     : 07E1F2AA | Userdata     : 000007E0
  959.  
  960.  
  961. Related commands: addstruct remstruct view
  962.  
  963. Related functions: peek apeek stsize
  964.  
  965. Related lists: stru
  966.  
  967. Related tutor files: LookingAtThings
  968.  
  969. ================================ addstruct ===================================
  970.  
  971.    ADDStruct <filename>
  972.  
  973.  
  974. Add the ²structure definitions from the file to the PowerVisor 'stru'
  975. list. You can then use these structures with the 'interprete' and
  976. 'view' commands and the 'peek' and 'apeek' functions.
  977.  
  978. You can look in the 'stru' list to see which ¹structures are allready
  979. in memory.
  980.  
  981. The file must be a ²PVSD file. This is a file made by the ¹'MStruct' utility
  982. which can be found on the PowerVisor disk. 'addstruct' will complain when
  983. the format of the file is not right.
  984.  
  985.  
  986. Example :
  987.  
  988.    See the 'interprete' command
  989.  
  990.  
  991. Related commands: remstruct interprete view
  992.  
  993. Related functions: peek apeek stsize
  994.  
  995. Related lists: stru
  996.  
  997. Related tutor files: LookingAtThings
  998.  
  999. ================================= string =====================================
  1000.  
  1001.    <string> <- STRIng <string pointer>
  1002.  
  1003.  
  1004. This command simply evaluates its argument and returns it. This command is
  1005. useful in ARexx if you want to convert a string pointer (a pointer to a
  1006. string) to an ARexx string. This is because this function returns a string
  1007. when used in ARexx
  1008.  
  1009.  
  1010. Related commands: assign
  1011.  
  1012. Related tutor files: Scripts
  1013.  
  1014. ================================= assign =====================================
  1015.  
  1016.    ASsign <assignment string>
  1017.  
  1018.  
  1019. Assign a value to a ²PowerVisor variable.
  1020. This command also works for ²memory assignments.
  1021.  
  1022.  
  1023. Example:
  1024.  
  1025.    The following ARexx script (type in and execute with 'rx')
  1026.  
  1027.       /* Script */
  1028.       address rexx_powervisor
  1029.       a=1
  1030.       assign 'a=2'
  1031.       disp a
  1032.       disp 'a'
  1033.  
  1034.    Will have as output :
  1035.  
  1036.       < rx file <enter>
  1037.       > 00000001 , 1
  1038.       > 00000002 , 2
  1039.  
  1040.  
  1041. Related commands: rx vars remvar script assign error clip remclip string
  1042.  
  1043. Related tutor files: Scripts
  1044.  
  1045. ================================== clip ======================================
  1046.  
  1047.    [RC,<Pointer to data>] <- CLIp <Clip name> [<Pointer to data> <Length>]
  1048.  
  1049.  
  1050. If you supply the <Pointer to data> and <Length> arguments this command
  1051. can be used to install a new ¹clip in the ²ARexx system. In this case the
  1052. return value (RC) is undefined.
  1053.  
  1054. If you don't supply these two extra arguments, PowerVisor will search the
  1055. clip and return the pointer to the data in 'RC' (or 0 if not found). Note
  1056. that this pointer is actually a pointer to the string part of the 'RexxArg'
  1057. structure so you can find the length of the data in *(RC-4).w (the word
  1058. four bytes before the data).
  1059. The pointer is also displayed on screen.
  1060.  
  1061.  
  1062. Example:
  1063.  
  1064.  
  1065. < clip TEST "Testing 1 2 3..." 16 <enter>
  1066.  
  1067. < memory {-clip TEST} 16 <enter>
  1068. > 07E9A0F0: 54657374 696E6720 31203220 332E2E2E              Testing 1 2 3...
  1069.  
  1070. CLI< rx 'say getclip(test)' <enter>
  1071. CLI> Testing 1 2 3...
  1072.  
  1073.  
  1074. Related commands: remclip rx assign
  1075.  
  1076. Related tutor files: Scripts
  1077.  
  1078. ================================= remclip ====================================
  1079.  
  1080.    REMCLip <Clip name>
  1081.  
  1082.  
  1083. Remove a ¹clip previously set with 'clip' or with some other external ARexx
  1084. program.
  1085.  
  1086.  
  1087. Related commands: clip rx assign
  1088.  
  1089. Related tutor files: Scripts
  1090.  
  1091. ================================== error =====================================
  1092.  
  1093.    <pointer to error string> <- ERror <error number>
  1094.  
  1095.  
  1096. Get a pointer to an ²error string (see 'geterror' in the 'Functions' reference
  1097. file for a list of error numbers). This contents of this pointer is very
  1098. volatile because the pointer actually points to a very much used area
  1099. in PowerVisor. Because of this, this command has only limited use. The
  1100. command is more useful in ¹ARexx where it returns a string containing the
  1101. error message.
  1102.  
  1103.  
  1104. Example:
  1105.  
  1106.  
  1107. The following command results in rubbish because the 'memory' command
  1108. immediatelly needs the area containing the error string.
  1109.  
  1110. < memory {error 17} <enter>
  1111. > <rubbish>
  1112.  
  1113.  
  1114. If you want a copy of the string you can use the 'alloc' function :
  1115.  
  1116. < str=alloc(s,#{error 17}) <enter>
  1117. < memory str 16 <enter>
  1118. > 07E9C25A: 4D697373 696E6720 6F706572 616E6420               Missing operand
  1119.  
  1120.  
  1121. Related commands: rx script
  1122.  
  1123. Related functions: geterror
  1124.  
  1125. Related tutor files: Scripts
  1126.  
  1127. =================================== rx =======================================
  1128.  
  1129.    RX <file name>
  1130.  
  1131.  
  1132. Execute an ²ARexx script. The default extension for ARexx scripts is ¹'pv'.
  1133. You do not need to type this extension unless you use a different one.
  1134.  
  1135. The name of the ²PowerVisor ARexx port is :
  1136.  
  1137.    ¹REXX_POWERVISOR
  1138.  
  1139.  
  1140. Example :
  1141.  
  1142.    See the 'assign' command
  1143.  
  1144.  
  1145. Related commands: script assign clip remclip
  1146.  
  1147. Related tutor files: Scripts
  1148.  
  1149. ================================ remstruct ===================================
  1150.  
  1151.    REMStruct <struct def pointer>
  1152.  
  1153.  
  1154. Unload a ²structure definition previously loaded with 'addstruct'.
  1155.  
  1156. 'remstruct' uses ¹autodefault to 'stru' for the first argument.
  1157.  
  1158.  
  1159. Related commands: addstruct interprete view
  1160.  
  1161. Relate functions: peek apeek stsize
  1162.  
  1163. Related lists: stru
  1164.  
  1165. Related tutor files: LookingAtThings
  1166.  
  1167. ================================== llist =====================================
  1168.  
  1169.    LList <list> ['start']
  1170.  
  1171.  
  1172. Traverse a ²system list and print all ¹nodes in the list.
  1173. If 'start' is specified, 'LList' will start listing from the start of the
  1174. list.
  1175.  
  1176. You can type really anything for the 'start' argument. The simple presence
  1177. of an extra argument is enough.
  1178.  
  1179.  
  1180. Example :
  1181.  
  1182. < list port <enter>
  1183. > MsgPort node name   : Node     Pri SigBit SigTask
  1184. > ---------------------------------------------------------------------------
  1185. > REXX                : 07E444A4 00      31 07E51438
  1186. > AREXX               : 07E51CC8 00      30 07E51438
  1187. > AddTools by Steve Ti: 07E42A50 00      31 07E70C98
  1188. > PowerVisor-port     : 07E7C6F6 00       1 00000000
  1189. > REXX_POWERVISOR     : 07E22098 00      24 07E1F268
  1190. > * Blank_Port        : 07E43390 00      30 07E73E28
  1191. > IPrefs.rendezvous   : 07E227F0 E2      31 07E28330
  1192. > SetPatch Port       : 07E227C0 9C       0 00000000
  1193.  
  1194. < llist port:rexx_powervisor <enter>
  1195. > Node name           : Node     Pri
  1196. > ---------------------------------------------------------------------------
  1197. > * Blank_Port        : 07E43390 00
  1198. > IPrefs.rendezvous   : 07E227F0 E2
  1199. > SetPatch Port       : 07E227C0 9C
  1200.  
  1201. < llist port:rexx_powervisor start <enter>
  1202. > Node name           : Node     Pri
  1203. > ---------------------------------------------------------------------------
  1204. > REXX                : 07E444A4 00
  1205. > AREXX               : 07E51CC8 00
  1206. > AddTools by Steve Ti: 07E42A50 00
  1207. > PowerVisor-port     : 07E7C6F6 00
  1208. > REXX_POWERVISOR     : 07E22098 00
  1209. > * Blank_Port        : 07E43390 00
  1210. > IPrefs.rendezvous   : 07E227F0 E2
  1211. > SetPatch Port       : 07E227C0 9C
  1212.  
  1213.  
  1214. Related commands: list
  1215.  
  1216. Related tutor files: LookingAtThings
  1217.  
  1218. ================================== vars ======================================
  1219.  
  1220.    VArs ['all']
  1221.  
  1222.  
  1223. This command shows all ¹variables. You will notice the variables
  1224. ¹'rc' and ¹'error'.
  1225. When you use the 'all' option, PowerVisor will show all variables
  1226. including ¹constants and ¹functions.
  1227. Notice the ¹'mode' ²special variable, the ¹'version' constant and
  1228. the ¹'input' constant.
  1229.  
  1230. You can type really anything for the 'all' argument. The simple presence
  1231. of an extra argument is enough.
  1232.  
  1233.  
  1234. Example :
  1235.  
  1236. < a=1000 <enter>
  1237.  
  1238. < vars <enter>
  1239. > error                                    : 0   00000026 , 38
  1240. > rc                                       : 0   07E43080 , 132395136
  1241. > a                                        : 0   000003E8 , 1000
  1242.  
  1243. < vars all <enter>
  1244. > mode                                     : 2   00002159 , 8537
  1245. > version                                  : 1   00000200 , 512
  1246. > error                                    : 0   00000026 , 38
  1247. > rc                                       : 0   07E43080 , 132395136
  1248. > input                                    : 1   00000000 , 0
  1249. > getx                                     : 3   07E7F1D6 , 132641238
  1250. > gety                                     : 3   07E7F1DE , 132641246
  1251. > getdebug                                 : 3   07E86992 , 132671890
  1252. > getchar                                  : 3   07E7F1E6 , 132641254
  1253. > base                                     : 3   07E80562 , 132646242
  1254. > rp                                       : 3   07E7F224 , 132641316
  1255. > lines                                    : 3   07E7F1FC , 132641276
  1256. > cols                                     : 3   07E7F210 , 132641296
  1257. > key                                      : 3   07E7F2E4 , 132641508
  1258. > alloc                                    : 3   07E7D586 , 132633990
  1259. > free                                     : 3   07E7D5C8 , 132634056
  1260. > getsize                                  : 3   07E7D5EA , 132634090
  1261. > realloc                                  : 3   07E7D604 , 132634116
  1262. > lastmem                                  : 3   07E7D55A , 132633946
  1263. > lastfound                                : 3   07E7D562 , 132633954
  1264. > peek                                     : 3   07E804EC , 132646124
  1265. > apeek                                    : 3   07E80526 , 132646182
  1266. > rfrate                                   : 3   07E78310 , 132612880
  1267. > rfcmd                                    : 3   07E78318 , 132612888
  1268. > isalloc                                  : 3   07E7D5B0 , 132634032
  1269. > curlist                                  : 3   07E80164 , 132645220
  1270. > gethist                                  : 3   07E78170 , 132612464
  1271. > qual                                     : 3   07E7F2DC , 132641500
  1272. > getcol                                   : 3   07E7EF9C , 132640668
  1273. > getrow                                   : 3   07E7EFB0 , 132640688
  1274. > getlwin                                  : 3   07E7EF6E , 132640622
  1275. > stsize                                   : 3   07E804D8 , 132646104
  1276. > taglist                                  : 3   07E7CD22 , 132631842
  1277. > toppc                                    : 3   07E8584C , 132667468
  1278. > botpc                                    : 3   07E85868 , 132667496
  1279. > eval                                     : 3   07E8446C , 132662380
  1280. > if                                       : 3   07E84452 , 132662354
  1281. > isbreak                                  : 3   07E85818 , 132667416
  1282. > a                                        : 0   000003E8 , 1000
  1283.  
  1284. The first argument after the colon means the following :
  1285.  
  1286.    0 = normal variable
  1287.    1 = constant variable
  1288.    2 = special variable with an action attached to it (internal)
  1289.    3 = function (value is pointer to code for function)
  1290.  
  1291.  
  1292. Related commands: mode error remvar assign createfunc
  1293.  
  1294. ================================= remvar =====================================
  1295.  
  1296.    REMVar {<variables>}
  1297.  
  1298.  
  1299. This command removes PowerVisor ¹variables if they exist.
  1300. 'Remvar' is very useful in ¹scripts. If a variable on the commandline
  1301. does not exist, 'remvar' will give NO error but simply continue with the
  1302. other variables on the commandline. You can only remove variables.
  1303. Functions, special variables and constants can't be removed with this
  1304. command. 'rc' and 'error' are also private and can't be removed.
  1305.  
  1306.  
  1307. Example :
  1308.  
  1309. < myvar=1000 <enter>
  1310. < remvar myvar <enter>
  1311.  
  1312. < disp myvar <enter>
  1313. > Addressed element not found !
  1314.  
  1315.  
  1316. Related commands: vars assign
  1317.  
  1318. Related tutor files: Scripts
  1319.  
  1320. ================================== alias =====================================
  1321.  
  1322.    ALias [<alias command name> <alias string>]
  1323.  
  1324.  
  1325. ¹Alias without arguments lists all ²current aliases.
  1326.  
  1327. You can set a new alias <alias command name> to <alias string> with this
  1328. command. You can remove the alias string with the 'unalias' command.
  1329. When you create a new alias with the same name as an existing alias, the
  1330. old alias will be removed.
  1331.  
  1332. <alias command name> is the new command that you want to define. You
  1333. can't abbreviate this command like all normal commands. If you want to
  1334. do this you must define another alias for that.
  1335.  
  1336. <alias string> is the string that is executed whenever you use <alias
  1337. command name>. This will be the exact commandline except for the
  1338. transformations that are described below.
  1339.  
  1340. Before the string is executed all ²[] operators in the <alias string> are
  1341. replaced with the string starting after the first space after the command
  1342. (the command is <alias command name>).
  1343. All other spaces before and after the commandline are not ignored and are
  1344. included in [].
  1345.  
  1346. [<x>] with <x> one digit, is replaced with argument number <x>. The first
  1347. argument is [1]. If the argument does not exist, an empty string is
  1348. returned. Note that both leading and trailing spaces ARE ignored when
  1349. you use this operator.
  1350.  
  1351. You can mix both [] and ¹[<x>] and use them as many times as you
  1352. wish.
  1353.  
  1354. When you want to use quotes you must precede them with '\'.
  1355.  
  1356. Note that ²alias expansion may lead to big commandlines (especially if
  1357. you use ²recursive aliases). If the commandline gets too big you
  1358. will get an error. You can increase the ³maximum commandline lenght
  1359. with the 'prefs' command.
  1360.  
  1361. Alias expansion is only done once. This means that you can't recursively
  1362. define aliases in this manner.
  1363.  
  1364. When you use the ²group operator {}, alias expansion is done again. So
  1365. you can define ²recursive aliases using groups.
  1366.  
  1367.  
  1368. Example :
  1369.  
  1370.  
  1371. < alias lfd 'loadfd [] fd:[]_lib.fd' <enter>
  1372.  
  1373. When you type 'lfd exec' on the command line, the command line will be
  1374. expanded to 'loadfd exec fd:exec_lib.fd' before execution.
  1375.  
  1376.  
  1377. < alias execute li[]bs <enter>
  1378.  
  1379. When you type 'execute st li' on the command line, the command line will
  1380. be expanded to 'list libs'.
  1381. (This example is of course completely useles).
  1382.  
  1383.  
  1384. < alias writeln 'print \'[]\\0a\'' <enter>
  1385.  
  1386. 'writeln we are testing' will result in
  1387. 'print 'we are testing\0a''
  1388.  
  1389. Look how the newline is quoted. This is because we don't want a real
  1390. newline in the alias string. We want '\0a' in the alias string.
  1391.  
  1392.  
  1393. The following will NOT create an infinite loop:
  1394.  
  1395. < alias disp 'list []' <enter>
  1396. < alias list 'disp []' <enter>
  1397.  
  1398. This sequence of command simply swappes the two commands 'disp' and 'list'.
  1399.  
  1400.  
  1401. The following three commands will generate an infinite loop :
  1402.  
  1403. < alias disp '{list []}' <enter>
  1404. < alias list '{disp []}' <enter>
  1405. < disp 3 <enter>
  1406. > A stack overflow was getting close !
  1407.  
  1408. PowerVisor stops the recursion when there is no more available stack.
  1409.  
  1410.  
  1411. The following two commands define a new command 'fact'
  1412. to compute the facultaty of its argument :
  1413.  
  1414. < alias _fact 'void if(([])==1,1,{_fact ([])-1}*([]))' <enter>
  1415. < alias fact 'disp {_fact []}' <enter>
  1416.  
  1417. < fact 5 <enter>
  1418. > 00000078 , 120
  1419.  
  1420. '_fact' is the recursive alias. 'fact' is only provided to give a more
  1421. command like syntax. Note that this recursion is limited by both
  1422. the available stack and the maximum length of the commandline.
  1423.  
  1424.  
  1425. You can redefine a command :
  1426.  
  1427. < alias disp 'disp ([])+1' <enter>
  1428.  
  1429. < disp 4 <enter>
  1430. > 00000005 , 5
  1431. < d 4 <enter>
  1432. > 00000004 , 4
  1433.  
  1434.  
  1435. When you use '[]' in the alias string, this sequence is replaced by
  1436. everything after the first space. For example :
  1437.  
  1438. < alias pr 'print \'a[]b\\0a\' <enter>
  1439. < pr test <enter>
  1440. > atestb
  1441.  
  1442. < pr  test <enter>
  1443. > a testb
  1444.  
  1445.  
  1446. Look at the following example if you want more precise argument control :
  1447.  
  1448. < alias pr 'print \'Second : [2], First : [1]\\0a\'' <enter>
  1449. < pr a b <enter>
  1450. > Second : b, First : a
  1451.  
  1452. < pr      1th      2nd    <enter>
  1453. > Second : 2nd, First : 1th
  1454.  
  1455.  
  1456. Related commands: unalias
  1457.  
  1458. Related tutor files: InstallingPowerVisor
  1459.  
  1460. ================================= unalias ====================================
  1461.  
  1462.    UNALias <alias command name>
  1463.  
  1464.  
  1465. Remove an alias string previously installed with 'alias'.
  1466.  
  1467.  
  1468. Example :
  1469.  
  1470.  
  1471. < alias xxx 'disp 3' <enter>
  1472. < xxx <enter>
  1473. > 00000003 , 3
  1474.  
  1475. < unalias xxx <enter>
  1476. < xxx <enter>
  1477. > Syntax Error !
  1478.  
  1479.  
  1480. Related commands: alias
  1481.  
  1482. Related tutor files: InstallingPowerVisor
  1483.  
  1484. ================================== hold ======================================
  1485.  
  1486.    HOld
  1487.  
  1488.  
  1489. This command closes the PowerVisor screen and waits for the Right-Alt,
  1490. Right-Shift,? combination to reopen it again.
  1491. If a crash happens PowerVisor will reopen its screen automatically.
  1492.  
  1493. Note that you can redefine the ²hot key to any key combination you want
  1494. with the 'prefs' command.
  1495.  
  1496.  
  1497. Related commands: quit prefs
  1498.  
  1499. Related tutor files: GettingStarted
  1500.  
  1501. ================================== quit ======================================
  1502.  
  1503.    Quit
  1504.  
  1505.  
  1506. Quit PowerVisor. Everything will be cleaned up.
  1507. ²Frozen tasks are lost. ²Monitor functions will be cleaned. ²Crash trapping
  1508. is disabled. ²Stack checking is disabled. All ²debug tasks
  1509. are put back in the task list (they continue to run).
  1510. All ¹FD-Files will be removed from memory.
  1511. If one of your debug tasks is ¹tracing 'Quit' will print an error message.
  1512. First halt this task with 'trace h'.
  1513.  
  1514. Warning: Everything you allocated or opened using ²library functions will
  1515.          NOT be cleaned up. Remember to do it yourself.
  1516.  
  1517.          All ²crashed tasks are left in memory. They will simply wait.
  1518.  
  1519.          All ²freezed tasks are lost forever (and their memory too).
  1520.          UnFreeze or kill your tasks before you quit.
  1521.  
  1522.          All memory allocated with the 'alloc' function is automatically
  1523.          freed (This also includes memory allocated with 'rblock')
  1524.  
  1525.          All tasks you were debugging will simply be put back on their
  1526.          task list and will continue executing.
  1527.  
  1528.  
  1529. Related commands: hold
  1530.  
  1531. Related tutor files: GettingStarted
  1532.  
  1533. ================================= gadgets ====================================
  1534.  
  1535.    Gadgets <window>
  1536.  
  1537.  
  1538. Lists all ¹gadgets in the specified ¹window.
  1539.  
  1540. 'gadgets' uses ¹autodefault to 'wins' for the first argument.
  1541.  
  1542.  
  1543. Example :
  1544.  
  1545. < l wins <enter>
  1546. > Window name         : Address  Left  Top Width Height WScreen
  1547. > ---------------------------------------------------------------------------
  1548. >                     : 07E42A78    0   12   692    430 07E20300
  1549. >                     : 07E8C810    0    0   704    456 07E77A60
  1550. > Clock               : 07E66BD0  558  336   120    140 07E280D0
  1551. > My Shell            : 07E414E0    0  568   692    456 07E280D0
  1552. >                     : 07E3B078    0   16   692   1008 07E280D0
  1553.  
  1554. < gadgets clock <enter>
  1555. > Gadget ptr : left right width height Render   Text     SpecInfo ID
  1556. >
  1557. > 07E63C2C   :  -22     0    24     16 07E43BC4 00000000 00000000     0
  1558. > Flags      : GADGHCOMP GADGIMAGE GRELRIGHT LABELITEXT
  1559. > Activation : RELVERIFY BORDERSNIFF
  1560. > Type       : SYSGADGET WUPFRONT CUSTOMGADGET
  1561. >
  1562. > 07E63C6C   :  -45     0    24     16 07E5506C 00000000 00000000     0
  1563. > Flags      : GADGHCOMP GADGIMAGE GRELRIGHT LABELITEXT
  1564. > Activation : RELVERIFY BORDERSNIFF
  1565. > Type       : SYSGADGET WDOWNBACK CUSTOMGADGET
  1566. >
  1567. > 07E6682C   :  -17    -9    18     10 07E5549C 00000000 00000000     0
  1568. > Flags      : GADGHCOMP GADGIMAGE GRELBOTTOM GRELRIGHT LABELITEXT
  1569. > Activation : RELVERIFY BORDERSNIFF
  1570. > Type       : SYSGADGET SIZING CUSTOMGADGET
  1571. >
  1572. > 07E66C84   :    0     0    20     16 07E558CC 00000000 00000000     0
  1573. > Flags      : GADGHCOMP GADGIMAGE LABELITEXT
  1574. > Activation : RELVERIFY BORDERSNIFF
  1575. > Type       : SYSGADGET CLOSE CUSTOMGADGET
  1576. >
  1577. > 07E66CC4   :    0     0     0     15 00000000 00000000 00000000     0
  1578. > Flags      : GADGHCOMP GADGIMAGE GRELWIDTH LABELITEXT
  1579. > Activation : BORDERSNIFF
  1580. > Type       : SYSGADGET WDRAGGING CUSTOMGADGET
  1581.  
  1582.  
  1583. Related commands: list info
  1584.  
  1585. Related lists: wins
  1586.  
  1587. Related tutor files: LookingAtThings
  1588.  
  1589. ================================== size ======================================
  1590.  
  1591.    SIze <physical window> <x> <y>
  1592.  
  1593.  
  1594. Set the x and the y size (in pixels) for the ²physical window.
  1595. This command only works when the physical window is ¹resizable (not a
  1596. ²backdrop window).
  1597. You can move PowerVisor to another screen with the 'screen' command.
  1598. You can of course also size the PowerVisor window using the size gadget.
  1599.  
  1600. 'size' uses ¹autodefault to the 'pwin' list for the first argument.
  1601.  
  1602.  
  1603. Related commands: screen move
  1604.  
  1605. Related lists: pwin
  1606.  
  1607. Related tutor files: Screen
  1608.  
  1609. ================================= screen =====================================
  1610.  
  1611.    SCREen [<screen>]
  1612.  
  1613.  
  1614. Move the ²PowerVisor window to ²another screen. If you want PowerVisor on its
  1615. own screen, type 'screen' without arguments (this is default).
  1616. You can use the 'size' command to change the size for this window (or you
  1617. can use the sizinggadget). You can use 'move' to move the ²physical window.
  1618.  
  1619. 'screen' uses ¹autodefault to the 'scrs' list for the first argument.
  1620.  
  1621. If <screen> is 0 PowerVisor will move the 'Main' physical window on its own
  1622. screen, but the window will be resizable and movable. This is useful if
  1623. you want to customize your own design for PowerVisor.
  1624.  
  1625. If you want you can start with the PowerVisor window on the workbench
  1626. by default. Just type 'saveconfig' when PowerVisor is on the WorkBench.
  1627. 'saveconfig' will also remember the size of the window.
  1628.  
  1629.  
  1630. Example :
  1631.  
  1632. < screen workbench <enter>
  1633.  
  1634. move PowerVisor to workbench screen
  1635.  
  1636. < screen <enter>
  1637.  
  1638. back to own screen
  1639.  
  1640.  
  1641. Related commands: size move prefs
  1642.  
  1643. Related lists: scrs pwin
  1644.  
  1645. Related tutor files: Screen
  1646.  
  1647. ================================= remres =====================================
  1648.  
  1649.    REMRes <resident pointer>
  1650.  
  1651.  
  1652. Remove a ²resident module from the 'resm' list.
  1653.  
  1654. 'remres' uses ¹autodefault to the 'resm' list for the first argument.
  1655.  
  1656.  
  1657. Example :
  1658.  
  1659. < remres exec <enter>
  1660.  
  1661.  
  1662. Related lists: resm
  1663.  
  1664. ================================= remove =====================================
  1665.  
  1666.    <node> <- REMOve <node>
  1667.  
  1668.  
  1669. ³Remove a node from a list. Be carefull with this command. No checking is done
  1670. if you are really removing a node. The memory for this node is not freed (you
  1671. can later include this node again in the list with the exec functions
  1672. 'addhead', 'addtail' or 'enqueue').
  1673.  
  1674. ================================= curdir =====================================
  1675.  
  1676.    CUrdir <process> <directory name>
  1677.  
  1678.  
  1679. Set a new ²current directory for a process.
  1680.  
  1681. 'curdir' uses ¹autodefault to the 'task' list for the first argument.
  1682.  
  1683.  
  1684. Example :
  1685.  
  1686. < curdir Shell :langua/sources <enter>
  1687.  
  1688.  
  1689. Related lists: task
  1690.  
  1691. ================================== clear =====================================
  1692.  
  1693.    CLEar [<value>]
  1694.  
  1695.  
  1696. ¹Fill all unused memory with <value> (or 0 if value is not specified).
  1697. <value> is a longword.
  1698.  
  1699.  
  1700. Example :
  1701.  
  1702. < clear $ABCDEF00 <enter>
  1703.  
  1704. This command will fill all free memory with $ABCDEF00. So you can easily
  1705. see which memory is free and which memory is not if you view the memory.
  1706.  
  1707. ================================= current ====================================
  1708.  
  1709.    CURRent <logical window>
  1710.  
  1711.  
  1712. Set the ³³current logical window. Only 'Extra' and 'Main' are allowed.
  1713. Before you can use the 'extra' logical window you must open it with
  1714. the 'xwin' command or the 'openlw' command.
  1715.  
  1716. 'current' uses ¹autodefault to the 'lwin' list for the first argument.
  1717.  
  1718. You can use the 'getlwin' function to see which logical window is current.
  1719. Use the 'on' command to temporarily set the current logical window (for
  1720. one command).
  1721.  
  1722.  
  1723. Example :
  1724.  
  1725. Open 'Extra' logical window (if not already open) :
  1726.  
  1727. < xwin <enter>
  1728.  
  1729. < current extra <enter>
  1730. < l task <enter>
  1731. > ...
  1732.  
  1733. Output appears on 'Extra' logical window.
  1734.  
  1735. Close 'Extra' window :
  1736.  
  1737. < xwin <enter>
  1738.  
  1739.  
  1740. Related commands: xwin on openlw
  1741.  
  1742. Related functions: getlwin
  1743.  
  1744. Related lists: lwin
  1745.  
  1746. Related tutor files: Screen
  1747.  
  1748. =================================== on =======================================
  1749.  
  1750.    ON <logical window> <command>
  1751.  
  1752.  
  1753. With this command you can execute an other command, so that it's output
  1754. appears on the ²logical window of your choice (except 'Debug' and 'Source').
  1755. This command temporary sets the ²current window to <logical window>.
  1756.  
  1757. 'on' uses ¹autodefault to the 'lwin' list for the first argument.
  1758.  
  1759.    on <log win> <command>
  1760.  
  1761.       is the same as
  1762.  
  1763.    current <log win>
  1764.    <command>
  1765.    current <previous log win>
  1766.  
  1767.  
  1768. Example :
  1769.  
  1770. open 'Extra' logical window :
  1771.  
  1772. < xwin <enter>
  1773.  
  1774. execute a list on that window :
  1775.  
  1776. < on extra list task <enter>
  1777. > ...
  1778.  
  1779. Output appears on 'Extra'.
  1780.  
  1781. Using the ²group operator you can execute more commands at once :
  1782.  
  1783. < on extra {disp 1;disp 2;disp 3} <enter>
  1784. > 00000001 , 1
  1785. > 00000002 , 2
  1786. > 00000003 , 3
  1787.  
  1788. appears on 'Extra'.
  1789.  
  1790. You can also execute a command in a string :
  1791.  
  1792. Wait for input from user :
  1793.  
  1794. < scan <enter>
  1795.  
  1796. Type command (at the input prompt = '????>') :
  1797.  
  1798. < disp 4 <enter>
  1799.  
  1800. < on extra #input <enter>
  1801. > 00000004 , 4
  1802.  
  1803.  
  1804. Related commands: xwin current openlw closelw
  1805.  
  1806. Related functions: getlwin
  1807.  
  1808. Related lists: lwin
  1809.  
  1810. Related tutor files: Screen
  1811.  
  1812. =================================== cls ======================================
  1813.  
  1814.    CLs
  1815.  
  1816.  
  1817. This command clears the ³current logical window.
  1818. After the window is cleared the current position is set to the ²home position
  1819. of the logical window. This home position can be on two different places :
  1820.  
  1821.    - the real (0,0) home position. Logical windows like 'Debug' and 'Refresh'
  1822.      have this position as their home position. Such windows are called
  1823.      ²real-top windows. When such a window is cleared, PowerVisor
  1824.      automatically scrolls to the (0,0) position.
  1825.    - the top position of the bottom visible part of the logical window.
  1826.      Logical windows like 'Main' have this position as their home
  1827.      position. These windows are called ²top-visible windows. When such
  1828.      a window is cleared, PowerVisor scrolls to the bottom visible part
  1829.      of the ²logical window and sets the current position to the top
  1830.      line of this visible part.
  1831.  
  1832. Note that you can change the behaviour of each logical window with the
  1833. 'prefs' command.
  1834.  
  1835.  
  1836. Related commands: current prefs
  1837.  
  1838. Related functions: getlwin
  1839.  
  1840. Related lists: lwin
  1841.  
  1842. Related tutor files: Screen
  1843.  
  1844. =================================== led ======================================
  1845.  
  1846.    LEd
  1847.  
  1848.  
  1849. Use this command to toggle the ¹powerled on or off. This is useful when
  1850. a program is crashed or when you are using the ²led monitor.
  1851.  
  1852.  
  1853. Related commands: addfunc
  1854.  
  1855. Related lists: func
  1856.  
  1857. ================================== load ======================================
  1858.  
  1859.    <bytes loaded> <- LOAd <filename> <start> [<max bytes>]
  1860.  
  1861.  
  1862. ³Load a file into memory. Only <max bytes> are read in if specified.
  1863. Please allocate the memory you use.
  1864.  
  1865. This command displays the actual number of bytes read.
  1866.  
  1867.  
  1868. Example :
  1869.  
  1870. < pointer=alloc(n,10000) <enter>
  1871.  
  1872. < load s:startup-sequence pointer 10000 <enter>
  1873. > 0000066C , 1644
  1874.  
  1875. < disp pointer <enter>
  1876. > 07EA7E4A , 132808266
  1877.  
  1878. You can free your memory later with the 'free' function. PowerVisor will
  1879. automatically free this memory when you quit or use the 'cleanup' command.
  1880.  
  1881.  
  1882. Related commands: save cleanup
  1883.  
  1884. Related functions: free
  1885.  
  1886. Related tutor files: Scripts
  1887.  
  1888. ================================== save ======================================
  1889.  
  1890.    <bytes written> <- SAve <filename> <start> <bytes>
  1891.  
  1892.  
  1893. ²Save memory to disk.
  1894.  
  1895. This command displays the actual number of bytes written.
  1896.  
  1897.  
  1898. Example :
  1899.  
  1900. < save testfile 2000 1000 <enter>
  1901. > 000003E8,1000
  1902.  
  1903.  
  1904. Related commands: load
  1905.  
  1906. ================================== fregs =====================================
  1907.  
  1908.    FREGs <task>|<debug node>
  1909.  
  1910.  
  1911. Show the ²floating point registers for a task in a primitive way.
  1912. Each ³floating point register (fp0..fp7) is shown in the internal
  1913. ³Exec stackframe format (12 bytes).
  1914.  
  1915. Future enhancements will provide better output and more support in
  1916. general for floating point debugging.
  1917.  
  1918.  
  1919. Related commands: regs
  1920.  
  1921. ================================== regs ======================================
  1922.  
  1923.    REGs <task>|<crash node>|<debug node>
  1924.  
  1925.  
  1926. Show the ¹registers for a ¹task, a ²crash node or a ²debug node.
  1927. When a task is crashed use the crash node pointer instead. If you don't
  1928. do this, some register may contain wrong information.
  1929.  
  1930.  
  1931. Example :
  1932.  
  1933. < regs task:input.device <enter>
  1934. > input.device        : 07E08B22 14  07E09B28    4096 Wait            TASK -
  1935. > ---------------------------------------------------------------------------
  1936. > D0: 07E0F1B4   D1: 00000000   D2: 40000000   D3: 00008000
  1937. > D4: 00000000   D5: 00000000   D6: 80000000   D7: C0000000
  1938. > A0: 07E08ACC   A1: 07E08B22   A2: 07E0D7A6   A3: 07E09CB6
  1939. > A4: 07E09B82   A5: 07E00796   A6: 07E007CC
  1940. > PC: 00F80C14   SP: 07E09B6E   SR: 0010
  1941.  
  1942.  
  1943. Related lists: task crsh dbug
  1944.  
  1945. ================================== print =====================================
  1946.  
  1947.    PRint <string>
  1948.  
  1949.  
  1950. Print a string on the ³current logical window. (Useful for ¹scripts and
  1951. ¹ARexx programs)
  1952.  
  1953.  
  1954. Example :
  1955.  
  1956. < print 'testing' <enter>
  1957. > testing
  1958.  
  1959. < print test <enter>
  1960. > test
  1961.  
  1962. To print a newline after the string, use:
  1963.  
  1964. < print 'testing\0a' <enter>
  1965.  
  1966. or
  1967.  
  1968. < print testing\0a <enter>
  1969.  
  1970. > testing
  1971.  
  1972. You can use the '\' for quoting characters too :
  1973.  
  1974. < print abc\ def\\\"\'\ the\ end\0a <enter>
  1975. > abc def\"' the end
  1976.  
  1977. or you can use the \() operator :
  1978.  
  1979. < print 'number : \(1000+3)\0a' <enter>
  1980. > number : 1003
  1981.  
  1982. < print 'task : \('input.device',%08lx)\0a' <enter>
  1983. > task : 07E063A2
  1984.  
  1985.  
  1986. Related commands: disp located current script rx
  1987.  
  1988. Related functions: getlwin
  1989.  
  1990. Related lists: lwin
  1991.  
  1992. Related tutor files: GettingStarted
  1993.  
  1994. ================================== sprint ====================================
  1995.  
  1996.    SPRint <string>
  1997.  
  1998.  
  1999. Print a string on a ²serial terminal (Useful for the ¹'addfunc' command, for
  2000. example).
  2001.  
  2002.  
  2003. Example :
  2004.  
  2005. < sprint 'First : \(1+1000), Then : \(65,%lc)\0a' <enter>
  2006. SERIAL> First : 1001, Then : A
  2007.  
  2008. < sprint test <enter>
  2009. SERIAL> test
  2010.  
  2011.  
  2012. Related commands: addfunc
  2013.  
  2014. ================================= locate =====================================
  2015.  
  2016.    LOCAte <x> [<y>]
  2017.  
  2018.  
  2019. Adjust the ²current location on the ³current logical window.
  2020.  
  2021.  
  2022. Example :
  2023.  
  2024. < locate 0,0 <enter>
  2025. < disp 3 <enter>
  2026. > 00000003 , 3
  2027.  
  2028.  
  2029. Related commands: home cls print current
  2030.  
  2031. Related functions: getx gety getchar lines cols getlwin
  2032.  
  2033. Related lists: lwin
  2034.  
  2035. Related tutor files: Screen
  2036.  
  2037. ================================ showalloc ===================================
  2038.  
  2039.    SHowalloc
  2040.  
  2041.  
  2042. This command shows all ²memory blocks allocated with the 'alloc'
  2043. function and the 'rblock' command. All memory blocks that
  2044. are in this list will be automatically freed when PowerVisor quits or when
  2045. you execute the 'cleanup' command.
  2046.  
  2047.  
  2048. Example :
  2049.  
  2050. < a=alloc(n,1000) <enter>
  2051. < b=alloc(n,100) <enter>
  2052.  
  2053. < showalloc <enter>
  2054. > 07EA6912,132802834
  2055. > 07EA77D2,132806610
  2056.  
  2057. < cleanup <enter>
  2058. < showalloc <enter>
  2059.  
  2060.  
  2061. Related commands: cleanup
  2062.  
  2063. Related functions: alloc free getsize isalloc realloc
  2064.  
  2065. ================================= cleanup ====================================
  2066.  
  2067.    CLEANup
  2068.  
  2069.  
  2070. This command frees all ²memory blocks that are allocated with the
  2071. 'alloc' function and the 'rblock' command. This is also
  2072. done automatically when PowerVisor quits.
  2073.  
  2074.  
  2075. Related commands: showalloc
  2076.  
  2077. Related functions: alloc free getsize isalloc realloc
  2078.  
  2079. Related tutor files: Scripts
  2080.  
  2081. ================================== color =====================================
  2082.  
  2083.    COLor <col num> <red> <green> <blue>
  2084.  
  2085.  
  2086. Change the ²rgb value of a ³PowerVisor screen colour.
  2087. Only use 0 or 1 for <col num> (except if you have a ³two bitplane screen).
  2088.  
  2089. This command gives an error when you try to use it when
  2090. PowerVisor is on another screen.
  2091.  
  2092.  
  2093. Related commands: screen
  2094.  
  2095. Related tutor files: Screen
  2096.  
  2097. ================================= request ====================================
  2098.  
  2099.    <result> <- REQuest <body string> <gadget string> <argument>
  2100.  
  2101.  
  2102. Show a ¹requester on the PowerVisor screen. This command uses
  2103. reqtools.library (V37 or higher) (© Nico François) is available, otherwise
  2104. this command is simulated using the 'key' function.
  2105. The result of this command is a number indicating the button that was
  2106. pressed (this number is also what you should press on the keyboard if
  2107. you don't have reqtools.library). The rightmost button is 0. All other
  2108. buttons are numbered from left to right starting with 1.
  2109.  
  2110. <body string> is the string for the requester title bar.
  2111. <gadget string> is the string with all the button text below.
  2112. Note that you can use one % C-formatting character (optionally) in one
  2113. of the above strings. If you do this <argument> is used for the value.
  2114. Note that <argument> is NOT an optional argument.
  2115.  
  2116.  
  2117. Example :
  2118.  
  2119.  
  2120. < result={request 'Body : %ld' 'LeftBut|MidBut|RightBut' 1001} <enter>
  2121.  
  2122.  
  2123. Related commands: getstring reqload reqsave
  2124.  
  2125. Related functions: key
  2126.  
  2127. ================================= reqload ====================================
  2128.  
  2129.    INPUT,<ptr to filename> <- REQLoad <title>
  2130.  
  2131.  
  2132. Ask the user for a ¹filename with a ¹filerequester. This command uses
  2133. reqtools.library (V37 or higher) (© Nico François) if available, otherwise
  2134. this command is equivalent to the 'scan' command.
  2135. The result of this command (in ¹input), is a pointer to the file name
  2136. (or 0 if the user pressed 'cancel'). This string is remembered until you
  2137. quit PowerVisor or until you use another input command ('scan', 'reqload',
  2138. 'reqsave' or 'getstring').
  2139.  
  2140. This command returns a string if used from ¹ARexx.
  2141.  
  2142. <title> is the title to be put in the requester window
  2143.  
  2144. The filerequester is a 'load' requester. This means that you can
  2145. double click on filenames.
  2146.  
  2147.  
  2148. Related commands: reqsave request getstring scan
  2149.  
  2150. ================================= reqsave ====================================
  2151.  
  2152.    INPUT,<ptr to filename> <- REQSave <title>
  2153.  
  2154.  
  2155. Ask the user for a ¹filename with a ¹filerequester. This command uses
  2156. reqtools.library (V37 or higher) (© Nico François) if available, otherwise
  2157. this command is equivalent to the 'scan' command.
  2158. The result of this command (in ¹input), is a pointer to the file name
  2159. (or 0 if the user pressed 'cancel'). This string is remembered until you
  2160. quit PowerVisor or until you use another input command ('scan', 'reqload',
  2161. 'reqsave' or 'getstring').
  2162.  
  2163. This command returns a string if used from ¹ARexx.
  2164.  
  2165. <title> is the title to be put in the requester window
  2166.  
  2167. The filerequester is a 'save' requester. This means that you can't
  2168. double click on filenames.
  2169.  
  2170.  
  2171. Related commands: reqload request getstring scan
  2172.  
  2173. ================================ getstring ===================================
  2174.  
  2175.    INPUT,<ptr to inputline> <- GEtstring <title> <max number of chars>
  2176.  
  2177.  
  2178. Ask the user for ¹input. This command uses reqtools.library (V37 or
  2179. higher) (© Nico François) if available, otherwise this command is equivalent
  2180. to the 'scan' command.
  2181. The result of this command (in ¹input), is a pointer to the result string
  2182. (or 0 if the user pressed 'cancel'). This string is remembered until you
  2183. quit PowerVisor or until you use another input command ('scan', 'reqload',
  2184. 'reqsave' or 'getstring').
  2185.  
  2186. This command returns a string if used from ¹ARexx.
  2187.  
  2188. <title> is the title to be put in the requester window
  2189. <max number of chars> is the maximum number of characters that is allowed
  2190. in the requester
  2191.  
  2192. Both parameters are ignored if 'scan' is used
  2193.  
  2194.  
  2195. Example :
  2196.  
  2197.  
  2198. < getstring 'This is the title' 256 <enter>
  2199. Requester> This is a test <enter>
  2200.  
  2201. < memory input 20 <enter>
  2202. > 07EEBC82: 54686973 20697320 61207465 73740000              This is a test..
  2203. > 07EEBC92: 00000000                                         ....
  2204.  
  2205.  
  2206. Related commands: scan request reqload reqsave
  2207.  
  2208. Related functions: key
  2209.  
  2210. ================================== scan ======================================
  2211.  
  2212.    INPUT,<ptr to inputline> <- SCAn [<number>]
  2213.  
  2214.  
  2215. Ask the user for ¹input. This command is very useful for ²ARexx scripts.
  2216. The result of this command (in ¹input), is a pointer to the result string.
  2217. This string is remembered until you quit PowerVisor or until you use
  2218. another input command ('scan', 'reqload', 'reqsave' or 'getstring').
  2219.  
  2220. This command returns a string if used from ¹ARexx.
  2221.  
  2222. Normally the prompt is '????'. If you want another 4 letter prompt you
  2223. can use <number>.
  2224.  
  2225.  
  2226. Example :
  2227.  
  2228.  
  2229. < scan *"TEST" <enter>
  2230. TEST> This is a test <enter>
  2231.  
  2232. < memory input 20 <enter>
  2233. > 07EEBC82: 54686973 20697320 61207465 73740000              This is a test..
  2234. > 07EEBC92: 00000000                                         ....
  2235.  
  2236.  
  2237. Related commands: showalloc cleanup getstring reqload reqsave
  2238.  
  2239. Related functions: key
  2240.  
  2241. ================================== disp ======================================
  2242.  
  2243.    <value of expression> <- Disp <expression>
  2244.  
  2245.  
  2246. Use this command to display an ¹expression.
  2247.  
  2248.  
  2249. Example :
  2250.  
  2251.  
  2252. < disp 4*(7-3) <enter>
  2253. > 00000010 , 16
  2254.  
  2255.  
  2256. Related commands: print locate
  2257.  
  2258. Related tutor files: Expressions
  2259.  
  2260. ================================= refresh ====================================
  2261.  
  2262.    Refresh [<refresh rate> <command>]
  2263.  
  2264.  
  2265. This command installs <command> to be executed every <refresh rate>
  2266. ¹IntuiTick (one IntuiTick is a tenth of a second).
  2267.  
  2268. With no arguments 'refresh' removes the ²refresh command.
  2269.  
  2270. Note that the output from <command> is send to the
  2271. ³'Refresh' logical window if it is open. Otherwise the output goes to
  2272. the current logical window. Use the 'rwin' command to open the 'Refresh'
  2273. window.
  2274.  
  2275.  
  2276. Example :
  2277.  
  2278. < rwin <enter>
  2279. < a=0 <enter>
  2280. < refresh 1 {home;disp a;a=a+1} <enter>
  2281.  
  2282. Look and admire the result ...
  2283.  
  2284. < refresh <enter>
  2285.  
  2286. You can also refresh a command from a string :
  2287.  
  2288. Wait for input from user :
  2289.  
  2290. < scan <enter>
  2291.  
  2292. Type command (at the input prompt = '????>') :
  2293.  
  2294. ????< disp 4 <enter>
  2295. < refresh 10 #input <enter>
  2296.  
  2297.  
  2298. Related commands: rwin list home openlw closelw
  2299.  
  2300. Related functions: rfrate rfcmd
  2301.  
  2302. Related lists: lwin
  2303.  
  2304. Related tutor files: GettingStarted Screen
  2305.  
  2306. =================================== fit ======================================
  2307.  
  2308.    FIT <logical window>
  2309.  
  2310.  
  2311. This command adjusts the ³number of columns and number of rows of a
  2312. ²logical window to fit exactly in the visible size. This is useful after a
  2313. switch from ¹non-interlace to ¹interlace for example. You can't scroll in the
  2314. logical window after a 'fit' since the window is just as large as the visible
  2315. size.
  2316.  
  2317. You can achieve the same result with the 'colrow' command, but then you have
  2318. to compute the number of columns and rows for yourselves.
  2319.  
  2320. 'fit' uses ¹autodefault to the 'lwin' list for the first argument.
  2321.  
  2322.  
  2323. Example :
  2324.  
  2325. Open the 'Extra' logical window :
  2326.  
  2327. < xwin <enter>
  2328.  
  2329. < fit extra <enter>
  2330.  
  2331.  
  2332. Related commands: colrow xwin rwin dwin swin awin owin
  2333.  
  2334. Related lists: lwin
  2335.  
  2336. Related tutor files: Screen
  2337.  
  2338. ================================== rwin ======================================
  2339.  
  2340.    RWin [<number of lines>]
  2341.  
  2342.  
  2343. Open/close the ²refresh window. (required if you want to use the 'refresh'
  2344. command).
  2345.  
  2346. Normally the height of the new logical window is 30 % of the total
  2347. physical window height ('Main' is the physical window for all standard
  2348. logical windows). However, if you specify <number of lines>, the logical
  2349. window will be opened with <number of lines> visible lines (This is
  2350. the number of lines when the default PowerVisor font is used).
  2351.  
  2352. By default the ³'Refresh' logical window has the following characteristics :
  2353.  
  2354.    - ³Number of columns is fixed and equal to the maximum number of columns
  2355.      visible at the time the logical window is created
  2356.    - ³Number of rows is fixed and is always equal to 50
  2357.    - ²-MORE- checking is disabled
  2358.    - ²Interrupt/Pause checking is disabled
  2359.    - ²Home position is real-top
  2360.    - ³Auto Output Snap is off
  2361.  
  2362. You can change these characteristics with the 'prefs' command.
  2363.  
  2364. Note that if the 'intui' mode flag is one (this is off by default, see the
  2365. 'mode' command) the logical window will be opened on a new physical window.
  2366. <number of lines> is ignored in that case.
  2367.  
  2368.  
  2369. Related commands: refresh dwin swin xwin awin owin fit colrow prefs
  2370.  
  2371. Related lists: lwin
  2372.  
  2373. Related tutor files: Screen
  2374.  
  2375. ================================== xwin ======================================
  2376.  
  2377.    Xwin [<numer of lines>]
  2378.  
  2379.  
  2380. Open/close the ²extra window. You can use the 'Extra' ²logical window for
  2381. everything you like. You can use it as a scratchbook for example. Using
  2382. the 'on' command you can dump some information there.
  2383.  
  2384. Normally the height of the new logical window is 30 % of the total
  2385. physical window height ('Main' is the physical window for all standard
  2386. logical windows). However, if you specify <number of lines>, the logical
  2387. window will be opened with <number of lines> visible lines (This is
  2388. the number of lines when the default PowerVisor font is used).
  2389.  
  2390. By default the ³'Extra' logical window has the following characteristics :
  2391.  
  2392.    - ³Number of columns is fixed and equal to the maximum number of columns
  2393.      visible at the time the logical window is created
  2394.    - ³Number of rows is fixed and equal to the maximum number of rows visible
  2395.      at the time the logical window is created
  2396.    - ²-MORE- checking is disabled
  2397.    - ²Interrupt/Pause checking is enabled
  2398.    - ²Home position is top-visible
  2399.    - ³Auto Output Snap is on
  2400.  
  2401. You can change these characteristics with the 'prefs' command.
  2402.  
  2403. Note that if the 'intui' mode flag is one (this is off by default, see the
  2404. 'mode' command) the logical window will be opened on a new physical window.
  2405. <number of lines> is ignored in that case.
  2406.  
  2407.  
  2408. Related commands: rwin dwin swin awin owin fit colrow prefs
  2409.  
  2410. Related lists: lwin
  2411.  
  2412. Related tutor files: Screen
  2413.  
  2414. ================================== dwin ======================================
  2415.  
  2416.    DWin [<number of lines>]
  2417.  
  2418.  
  2419. Open/close the ²debug window. (required if you want to use
  2420. ²fullscreen debugging).
  2421.  
  2422. Normally the height of the new logical window is 30 % of the total
  2423. physical window height ('Main' is the physical window for all standard
  2424. logical windows). However, if you specify <number of lines>, the logical
  2425. window will be opened with <number of lines> visible lines (This is
  2426. the number of lines when the default PowerVisor font is used).
  2427.  
  2428. By default the ³'Debug' logical window has the following characteristics :
  2429.  
  2430.    - ³Number of columns is fixed and equal to 82
  2431.    - ³Number of rows is fixed and equal to 42
  2432.    - ²-MORE- checking is disabled
  2433.    - ²Interrupt/Pause checking is disabled
  2434.    - ²Home position is real-top
  2435.    - ³Auto Output Snap is off
  2436.  
  2437. You can change these characteristics with the 'prefs' command.
  2438.  
  2439. You can't use 'on' with the 'Debug' logical window.
  2440.  
  2441. Note that if the 'intui' mode flag is one (this is off by default, see the
  2442. 'mode' command) the logical window will be opened on a new physical window.
  2443. <number of lines> is ignored in that case.
  2444.  
  2445.  
  2446. Related commands: rwin swin xwin awin owin debug prefs
  2447.  
  2448. Related lists: lwin
  2449.  
  2450. Related tutor files: Screen Debug
  2451.  
  2452. ================================== swin ======================================
  2453.  
  2454.    SWin [<number of lines>]
  2455.  
  2456.  
  2457. Open/close the ²source window. (required if you want to use
  2458. ²sourcelevel debugging).
  2459.  
  2460. Normally the height of the new logical window is 30 % of the total
  2461. physical window height ('Main' is the physical window for all standard
  2462. logical windows). However, if you specify <number of lines>, the logical
  2463. window will be opened with <number of lines> visible lines (This is
  2464. the number of lines when the default PowerVisor font is used).
  2465.  
  2466. By default the ³'Source' logical window has the following characteristics :
  2467.  
  2468.    - ³Number of columns is ¹autoscalable (-1)
  2469.    - ³Number of rows is autoscalable (-1)
  2470.    - ²-MORE- checking is disabled
  2471.    - ²Interrupt/Pause checking is disabled
  2472.    - ²Home position is real-top
  2473.    - ³Auto Output Snap is off
  2474.  
  2475. You can change these characteristics with the 'prefs' command.
  2476.  
  2477. You can't use 'on' with the 'Source' logical window.
  2478.  
  2479. Note that if the 'intui' mode flag is one (this is off by default, see the
  2480. 'mode' command) the logical window will be opened on a new physical window.
  2481. <number of lines> is ignored in that case.
  2482.  
  2483.  
  2484. Related commands: rwin dwin xwin awin owin debug prefs source
  2485.  
  2486. Related lists: lwin
  2487.  
  2488. Related tutor files: Screen Debug
  2489.  
  2490. ================================== awin ======================================
  2491.  
  2492.    AWin [<number of lines>]
  2493.  
  2494.  
  2495. Open/close the ²Rexx window. When the ³'Rexx' logical window is open,
  2496. PowerVisor will use it for Rexx output. Otherwise the current logical
  2497. window is the one that will receive the output.
  2498.  
  2499. Normally the height of the new logical window is 30 % of the total
  2500. physical window height ('Main' is the physical window for all standard
  2501. logical windows). However, if you specify <number of lines>, the logical
  2502. window will be opened with <number of lines> visible lines (This is
  2503. the number of lines when the default PowerVisor font is used).
  2504.  
  2505. By default the 'Rexx' logical window has the following characteristics :
  2506.  
  2507.    - ³Number of columns is fixed and equal to the maximum number of columns
  2508.      visible at the time the logical window is created
  2509.    - ³Number of rows is fixed and is always equal to 50
  2510.    - ²-MORE- checking is disabled
  2511.    - ²Interrupt/Pause checking is disabled
  2512.    - ²Home position is top-visible
  2513.    - ³Auto Output Snap is off
  2514.  
  2515. You can change these characteristics with the 'prefs' command.
  2516.  
  2517. Note that if the 'intui' mode flag is one (this is off by default, see the
  2518. 'mode' command) the logical window will be opened on a new physical window.
  2519. <number of lines> is ignored in that case.
  2520.  
  2521.  
  2522. Related commands: rwin dwin swin xwin owin fit colrow prefs
  2523.  
  2524. Related lists: lwin
  2525.  
  2526. Related tutor files: Screen Scripts
  2527.  
  2528. ================================== owin ======================================
  2529.  
  2530.    OWin [<number of lines>]
  2531.  
  2532.  
  2533. Open/close the ²PortPrint window. When the ³'PPrint' logical window is open,
  2534. PowerVisor will use it for all PortPrint output. Otherwise the current
  2535. logical window is the one that will receive the output.
  2536.  
  2537. Normally the height of the new logical window is 30 % of the total
  2538. physical window height ('Main' is the physical window for all standard
  2539. logical windows). However, if you specify <number of lines>, the logical
  2540. window will be opened with <number of lines> visible lines (This is
  2541. the number of lines when the default PowerVisor font is used).
  2542.  
  2543. By default the 'PPrint' logical window has the following characteristics :
  2544.  
  2545.    - ³Number of columns is fixed and equal to the maximum number of columns
  2546.      visible at the time the logical window is created
  2547.    - ³Number of rows is fixed and is always equal to 50
  2548.    - ²-MORE- checking is disabled
  2549.    - ²Interrupt/Pause checking is disabled
  2550.    - ²Home position is top-visible
  2551.    - ³Auto Output Snap is off
  2552.  
  2553. You can change these characteristics with the 'prefs' command.
  2554.  
  2555. Note that if the 'intui' mode flag is one (this is off by default, see the
  2556. 'mode' command) the logical window will be opened on a new physical window.
  2557. <number of lines> is ignored in that case.
  2558.  
  2559.  
  2560. Related commands: rwin dwin swin awin xwin fit colrow prefs
  2561.  
  2562. Related lists: lwin
  2563.  
  2564. Related tutor files: Screen
  2565.  
  2566. ================================== mode ======================================
  2567.  
  2568.    MOde <mode argument> {<mode argument>...}
  2569.  
  2570.  
  2571. Install ¹preferences for PowerVisor.
  2572.  
  2573. The following arguments are supported:
  2574.    pal         set monitor to ¹pal (only AmigaDOS 2.0)
  2575.                the non-interlaced resolution is 640x256 and the
  2576.                interlaced resolution is 640x512. This resolution will be
  2577.                bigger if you use overscan.
  2578.    ntsc        set monitor to ¹ntsc (only AmigaDOS 2.0)
  2579.                non-interlaced : 640x200
  2580.                interlaced : 640x400
  2581.    vga         set monitor to ¹vga (only AmigaDOS 2.0 and new denise)
  2582.                non-interlaced : 640x480
  2583.                interlaced : 640x960
  2584.    viking      set monitor to ¹a2024 (only AmigaDOS 2.0)
  2585.                resolution : 1024x1008
  2586.  
  2587.    lace        use ¹interlace
  2588.    nolace      ²no interlace (default)
  2589.  
  2590.    fancy       use ²two bitplanes for the PowerVisor screen (default)
  2591.    nofancy     use only ²one bitplane
  2592.  
  2593.    sbottom     include the ²size gadget in the ²bottom border. This means that
  2594.                you loose a line but you gain some columns (default)
  2595.    nosbottom   include the ²size gadget in the ²right border of the window.
  2596.                You loose some columns but you gain a line or so
  2597.  
  2598.    space       add a space after a ¹snapped word (default)
  2599.    nospace     don't add a space. Simply snap the word as it is
  2600.  
  2601.    lonespc     snap a space if you click on an empty place in a logical
  2602.                window
  2603.    nolonespc   don't snap a space (default)
  2604.  
  2605.    shex        show ²hex words when ²disassembling instructions. The
  2606.                disadvantage is that these words could overwrite the right
  2607.                side of the ¹symbolname if present (default)
  2608.    noshex      don't show hex words. ¹Symbols will be completely visible
  2609.  
  2610.    dec         display all printed ¹integers as ¹decimal only
  2611.    hex         display all printed integers as ¹hexadecimal only
  2612.    hexdec      first display hex, than display decimal (default)
  2613.  
  2614.    more        enable ²-MORE- check for the 'Main' logical window (default)
  2615.    nomore      disable -MORE- check
  2616.  
  2617.    auto        perform an ²automatic list whenever the ²current list changes
  2618.    noauto      don't do this (default)
  2619.  
  2620.    byte        ²list memory as ¹bytes (for the 'memory' command)
  2621.    word        list memory as ¹words
  2622.    long        list memory as ¹longs (default)
  2623.    ascii       list memory as ¹ascii
  2624.  
  2625.    fb          ¹feedback each command as it is typed in by the user on
  2626.                the ³current logical window (default)
  2627.    nofb        don't do this
  2628.  
  2629.    patch       patch the ²Exec AddTask function. When this function is
  2630.                patched by PowerVisor ¹crashtrapping will work better
  2631.                for all new tasks created after the patch is applied.
  2632.                This is recommended if you use ²resident breakpoints
  2633.                (see the 'Debug' file). Note that it is not safe to
  2634.                run other debuggers (like ¹CodeProbe or ¹MonAm) when
  2635.                the patch is applied. They will probably crash when
  2636.                you try to trace with them. There will (probably) be
  2637.                no problems if you start the other debugger and load
  2638.                the debug program with this debugger BEFORE you
  2639.                apply the patch (before you start PowerVisor or before
  2640.                you type 'mode patch'). (default)
  2641.    nopatch     Don't patch the Exec AddTask function. When the AddTask
  2642.                function is not patched, PowerVisor will trap a crash
  2643.                a bit later (too late if you plan to use resident
  2644.                breakpoints). With the patch applied PowerVisor traps
  2645.                crashes just on the spot while if the patch is not
  2646.                applied PowerVisor will only trap the crash just before
  2647.                the guru would normally arrive (you will even have to
  2648.                press 'cancel' on the 'task-held' requester before
  2649.                PowerVisor notices the crash). But 'mode nopatch' is
  2650.                the only safe way to run other debuggers concurrently
  2651.                with PowerVisor.
  2652.  
  2653.    intui       if this option is set, PowerVisor will also open a
  2654.                physical window (or Intuition window) everytime you
  2655.                open one of the standard logical windows ('Extra',
  2656.                'Debug', ...) with the standard commands ('xwin',
  2657.                'dwin', ...) (not with 'openlw'). This is useful if
  2658.                you prefer to work with Intuition windows instead of
  2659.                PowerVisor logical windows. The logical window
  2660.                is of course opened in this physical window (with the
  2661.                same name).
  2662.    nointui     Simply open each standard logical window in the 'Main'
  2663.                physical window (default)
  2664.  
  2665.  
  2666. You can set and examine the ²'mode' variable. This is useful for ¹scripts
  2667. (for example to remember the current settings so that the script can restore
  2668. them later).
  2669.  
  2670. When you have installed everything as you like it best you can make
  2671. the new values default with the 'saveconfig' command.
  2672.  
  2673.  
  2674. Example :
  2675.  
  2676. < mode byte dec <enter>
  2677.  
  2678. < d 4 <enter>
  2679. > 4
  2680.  
  2681. < m 0 <enter>
  2682. > 00000000: 00 00 00 00 07 E0 07 CC 00 F8 08 34 00 F8 0B 16  ...........4....
  2683. > 00000010: 00 F8 0A DA 00 F8 0A DC 00 F8 0A DE 00 F8 0A E0  ................
  2684. > 00000020: 00 F8 0C 00 00 F8 0A E4 00 F8 0A E7 00 F8 0A E8  ................
  2685. > 00000030: 00 F8 0A EA 00 F8 0A EC 00 F8 0A EE 00 F8 0A F0  ................
  2686. > 00000040: 00 F8 0A F2 00 F8 0A F4 00 F8 0A F6 00 F8 0A F8  ................
  2687. > ...
  2688.  
  2689. < mode long hexdec <enter>
  2690.  
  2691. < d 4 <enter>
  2692. > 00000004,4
  2693.  
  2694. < m 0 <enter>
  2695. > 00000000: 00000000 07E007CC 00F80834 00F80B16              ...........4....
  2696. > 00000010: 00F80ADA 00F80ADC 00F80ADE 00F80AE0              ................
  2697. > 00000020: 00F80C00 00F80AE4 00F80AE7 00F80AE8              ................
  2698. > 00000030: 00F80AEA 00F80AEC 00F80AEE 00F80AF0              ................
  2699. > 00000040: 00F80AF2 00F80AF4 00F80AF6 00F80AF8              ................
  2700. > 00000050: 00F80AFA 00F80AFC 00F80AFE 00F80B00              ................
  2701. > 00000060: 00F80B02 00F810F4 00F81152 00F81188              ...........R....
  2702. > 00000070: 00F811E6 00F8127C 00F812C6 00F81310              .......|........
  2703. > 00000080: 00F80B70 00F80B72 00F80B74 00F80B76              ...p...r...t...v
  2704. > 00000090: 00F80B78 00F80B7A 00F80B7C 00F80B7E              ...x...z...|...~
  2705. > 000000A0: 00F80B80 00F80B82 00F80B84 00F80B86              ................
  2706. > 000000B0: 00F80B88 00F80B8A 00F80B8C 00F80B8E              ................
  2707. > 000000C0: 00F80B90 00F80B92 00F80B94 00F80B96              ................
  2708. > 000000D0: 00F80B98 00F80B9A 00F80B9C 00F80B9E              ................
  2709. > 000000E0: 00F80BA0 00F80BA2 00F80BA4 00F80BA6              ................
  2710. > 000000F0: 00F80BA8 00F80BAA 00F80BAC 00F80BAE              ................
  2711. > 00000100: 80000005 07E08B22 66FFE6F7 00000000              ......."f.......
  2712. > 00000110: 66FF66FA 66FB667F 66FFA67F 66FF66F1              f.f.f.ff..f.f.
  2713. > 00000120: 66FFF6FB 66F7E6DF 66FF663F 66FF66F7              f...f...f.f?f.f.
  2714. > 00000130: 66FF66F9 64FF66FF 66FF66FF 66DFA6E7              f.f.d.f.f.f.f...
  2715.  
  2716.  
  2717. Related commands: saveconfig prefs
  2718.  
  2719. Related tutor files: InstallingPowerVisor
  2720.  
  2721. ================================== copy ======================================
  2722.  
  2723.    Copy <source> <destination> <bytes>
  2724.  
  2725.  
  2726. ¹Copy <bytes> bytes from <source> to <destination>.
  2727. Be cautious with this command. It can be very destructive.
  2728.  
  2729.  
  2730. Related commands: fill search
  2731.  
  2732. ================================== fill ======================================
  2733.  
  2734.    Fill <dest> <bytes> <with>
  2735.  
  2736.  
  2737. ¹Fill the memory starting at <dest> with the string <with>. Do this
  2738. for <bytes> bytes.
  2739.  
  2740. Be cautious with this command. It can be very destructive.
  2741.  
  2742.  
  2743. Example :
  2744.  
  2745. < a=alloc(n,1000) <enter>
  2746. < fill a 22 'test\41' <enter>
  2747.  
  2748. will copy 4.4 times the string "testA" beginning at address in a.
  2749. The memory map looks something like:
  2750.  
  2751. < m a <enter>
  2752. > 07E79AB2: 74657374 41746573 74417465 73744174              testAtestAtestAt
  2753. > 07E79AC2: 65737441 74650000 00000000 00000000              estAte..........
  2754. > 07E79AD2: 00000000 00000000 00000000 00000000              ................
  2755. > 07E79AE2: 00000000 00000000 00000000 00000000              ................
  2756. > ...
  2757.  
  2758.  
  2759. Related commands: copy search
  2760.  
  2761. ================================= search =====================================
  2762.  
  2763.    RC,<address> <- Search <start> <bytes> <string>
  2764.  
  2765.  
  2766. ¹Search to a string in memory starting at <start>. Search until the
  2767. string is found, or until you have searched <bytes> bytes.
  2768.  
  2769. Use the 'next' command to continue the search.
  2770. You can use the 'lastfound' function to see where 'next' will continue
  2771. its search.
  2772.  
  2773.  
  2774. Example :
  2775.  
  2776. < a=alloc(n,1000) <enter>
  2777. < fill a+100 4 'test' <enter>
  2778.  
  2779. < search a 1000 'test' <enter>
  2780. > 07E83756 , 132659030
  2781.  
  2782. Will search for the string "test" beginning at 'a'. If after 1000 bytes
  2783. the string is not found, 0 is the result.
  2784.  
  2785.  
  2786. Related commands: next copy fill
  2787.  
  2788. Related functions: lastfound
  2789.  
  2790. ================================== next ======================================
  2791.  
  2792.    RC,<address> <- Next
  2793.  
  2794.  
  2795. ²Continue searching at the last position.
  2796. This command prints 0 if not found.
  2797.  
  2798. You can use the 'lastfound' function to see where 'next' will continue
  2799. its search.
  2800.  
  2801.  
  2802. Related commands: search copy fill
  2803.  
  2804. Related functions: lastfound
  2805.  
  2806. ================================= account ====================================
  2807.  
  2808.    ACCount
  2809.  
  2810.  
  2811. This command enables/disables ²stack checking and ²task accounting.
  2812. Default is disabled.
  2813. Use the 'prefs' command to install another ²warning level for the
  2814. ³stack overflow checker.
  2815.  
  2816. Stack checking is done in the Exec Switch function. This means that the
  2817. stack checking resolution is not very high (see the 'stack' command).
  2818.  
  2819. Note that the 'stack' command provides a better stack checker for one
  2820. specific task.
  2821.  
  2822.  
  2823. Related commands: prefs stack
  2824.  
  2825. ================================== stack =====================================
  2826.  
  2827.    STAck [<task> <micro seconds>]
  2828.  
  2829.  
  2830. Use this command to check stack usage for a specific task. You can only
  2831. check one task at the time. With no arguments this command removes the
  2832. stack checker.
  2833.  
  2834. 'stack' uses the UNIT_MICROHZ timer device. This means that <micro seconds>
  2835. must be greater or equal than 2. This command has a better check resolution
  2836. than 'account' (if your <micro seconds> value is low enough).
  2837.  
  2838. 'stack' freezes the task when a stack overflow is about to occur (see the
  2839. 'prefs' command for the minimum number of bytes allowed in the stack).
  2840. Note that this behaviour is different from 'account'. Stack overflows
  2841. trapped with the 'account' stack checker are put in the 'crsh' (crash)
  2842. list (This behaviour may change in future).
  2843.  
  2844. In addition to stack checking this command also computes the maximum stack
  2845. usage for the task. You can display this maximum with the 'getstack'
  2846. function.
  2847.  
  2848. 'stack' uses ¹autodefault to the 'task' list for the first argument.
  2849.  
  2850.  
  2851. Related commands: prefs stack
  2852.  
  2853. Related functions: getstack
  2854.  
  2855. ================================== kill ======================================
  2856.  
  2857.    Kill <task>|<crash node>
  2858.  
  2859.  
  2860. ¹Cancel the specified task. This command works even if the task was
  2861. frozen.
  2862.  
  2863. If the task you want to kill has crashed, PowerVisor will also remove
  2864. the corresponding ²crash node. You can also kill a crashed task with a
  2865. pointer to the crash node instead of the task node.
  2866. Do not kill a ²debug task. Remove this with the 'debug' command.
  2867.  
  2868. Note that 'kill' will also try to remove all ¹windows and ¹screens belonging
  2869. to the task.
  2870.  
  2871. Note that it is very dangerous to kill a task while it is using some
  2872. functions from the dos.library.
  2873.  
  2874. 'kill' uses ¹autodefault to the 'task' list for the first argument.
  2875.  
  2876.  
  2877. Related commands: debug freeze
  2878.  
  2879. Related lists: task crsh
  2880.  
  2881. ================================= freeze =====================================
  2882.  
  2883.    FReeze <task>
  2884.  
  2885.  
  2886. ¹Freeze a task. Remember that when you quit PowerVisor all ²frozen tasks
  2887. are lost.
  2888.  
  2889. Use the 'unfreeze' command to unfreeze a task.
  2890. In the 'task' list all frozen tasks have ¹'Cold' as their 'Stat'.
  2891.  
  2892. 'freeze' uses ¹autodefault to the 'task' list for the first argument.
  2893.  
  2894.  
  2895. Related commands: kill unfreeze
  2896.  
  2897. Related lists: task
  2898.  
  2899. ================================ unfreeze ====================================
  2900.  
  2901.    UNFreeze <task>
  2902.  
  2903.  
  2904. ¹Unfreeze a task you have frozen before.
  2905.  
  2906. 'unfreeze' uses ¹autodefault to the 'task' list for the first argument.
  2907.  
  2908.  
  2909. Related commands: freeze kill
  2910.  
  2911. Related lists: task
  2912.  
  2913. ================================= addfunc ====================================
  2914.  
  2915.    RC,<func node> <- ADdfunc (<libfuncname> | 'offs' <library> <offset>)
  2916.                      ['only' <task>] [<type> [<command>]]
  2917.  
  2918.  
  2919. This is a very powerfull command which enables you to monitor
  2920. ²library functions. I will explain this command with examples.
  2921.  
  2922. 'addfunc' uses ¹autodefault to the 'task' list for the <task> argument.
  2923. 'addfunc' uses ¹autodefault to the 'libs' list for the <library> argument.
  2924.  
  2925. The following <type>s are available :
  2926.  
  2927.    .none. (do not specify) Only remember the information for the
  2928.                            8 last tasks using this function
  2929.    LED                     Blink the ¹powerled everytime the function
  2930.                            is used. Also remember the 8 last tasks
  2931.                            using the function
  2932.    FULL                    Remember the 8 last tasks using this function
  2933.                            and also remember the registers they used to
  2934.                            call this function
  2935.    FULLLED                 Combination of FULL and LED
  2936.    EXEC                    Execute <command> everytime the function is
  2937.                            called
  2938.    SCRATCH                 Destroy the contents of the scratch registers
  2939.                            'd1', 'a0' and 'a1'. They will contain
  2940.                            $BADBADD1, $BADBADA0 and $BADBADA1 respectively
  2941.  
  2942. Examples :
  2943.  
  2944. < loadfd exec fd:exec_lib.fd <enter>
  2945. > ...
  2946.  
  2947. < addfunc openlibrary <enter>
  2948.  
  2949. Whenever some task uses the openlibrary function call, the usage count
  2950. increments and the information for the last 8 tasks using this function is
  2951. updated.
  2952.  
  2953. < addfunc putmsg led <enter>
  2954.  
  2955. Whenever a task uses the putmsg function the powerled switches its state.
  2956. The information about the 8 last tasks using this function is updated.
  2957.  
  2958. < addfunc wait only trackdisk.device <enter>
  2959.  
  2960. Everytime 'trackdisk.device' uses the Wait function, the usage count is
  2961. incremented and the information for the 8 last tasks is updated.
  2962.  
  2963. You can find the usage counter in the list 'func'. Type 'func' to set
  2964. this list to the current one and type 'list'.
  2965.  
  2966. < l func <enter>
  2967. > Function monitor    : Node     Library  Offset Traptask    Count Type
  2968. > ---------------------------------------------------------------------------
  2969. > wait                : 07EA2250 07E007D8    318 07E0C6E4        2 LED
  2970. > putmsg              : 07EA1F48 07E007D8    366 00000000      314 LED
  2971. > openlibrary         : 07EA1C40 07E007D8    552 00000000       92 NORM
  2972.  
  2973. < remfunc wait <enter>
  2974. < remfunc putmsg <enter>
  2975. < remfunc openlibrary <enter>
  2976.  
  2977. < addfunc availmem full <enter>
  2978.  
  2979. With the 'info' command you can see the 8 last tasks using this function
  2980. and the contents of the registers before the function is called :
  2981.  
  2982. < info func:availmem func <enter>
  2983. > Function monitor    : Node     Library  Offset Traptask    Count Type
  2984. > ---------------------------------------------------------------------------
  2985. > availmem            : 07ED0680 07E007D8    216 00000000       13 FULL
  2986. >
  2987. > Workbench           : 07E339D0 01  07E35176    6000 Wait Workbench  (02) -
  2988. > D0: 001974E0   D1: 00000004   D2: 80000000   D3: 00000000
  2989. > D4: 00000000   D5: 00000001   D6: 40000000   D7: 80000000
  2990. > A0: 07E321B4   A1: 07E0091E   A2: 07E321B4   A3: 07E376F6
  2991. > A4: 07E326B8   A5: 07E351A8
  2992. > Workbench           : 07E339D0 01  07E35176    6000 Wait Workbench  (02) -
  2993. > D0: 00000000   D1: 00000000   D2: 80000000   D3: 00000000
  2994. > D4: 00000000   D5: 00000001   D6: 40000000   D7: 80000000
  2995. > A0: 07E321B4   A1: 07E321B4   A2: 07E321B4   A3: 07E376F6
  2996. > A4: 07E326B8   A5: 07E351A8
  2997. > Workbench           : 07E339D0 01  07E35176    6000 Wait Workbench  (02) -
  2998. > D0: 00243E50   D1: 00000002   D2: 80000000   D3: 00000000
  2999. > D4: 00000000   D5: 00000001   D6: 40000000   D7: 80000000
  3000. > A0: 07E321B4   A1: 07E0091E   A2: 07E321B4   A3: 07E376F6
  3001. > A4: 07E326B8   A5: 07E351A8
  3002. > Workbench           : 07E339D0 01  07E35176    6000 Wait Workbench  (02) -
  3003. > D0: 001974E0   D1: 00000004   D2: 80000000   D3: 00000000
  3004. > D4: 00000000   D5: 00000001   D6: 40000000   D7: 80000000
  3005. > A0: 07E321B4   A1: 07E0091E   A2: 07E321B4   A3: 07E376F6
  3006. > A4: 07E326B8   A5: 07E351A8
  3007. > Workbench           : 07E339D0 01  07E35176    6000 Wait Workbench  (02) -
  3008. > D0: 00000408   D1: 00020001   D2: 01FADB81   D3: 00000000
  3009. > D4: 40000000   D5: 80000000   D6: 00000000   D7: 00000408
  3010. > A0: 00000000   A1: 07E1EF8C   A2: 07ECF5A8   A3: 07E1EF8C
  3011. > A4: 07E220C0   A5: 07E21E58
  3012. > Workbench           : 07E339D0 01  07E35176    6000 Wait Workbench  (02) -
  3013. > D0: 001974E0   D1: 00000004   D2: 80000000   D3: 00000000
  3014. > D4: 00000000   D5: 00000001   D6: 40000000   D7: 80000000
  3015. > A0: 07E321B4   A1: 07E0091E   A2: 07E321B4   A3: 07E376F6
  3016. > A4: 07E326B8   A5: 07E351A8
  3017. > Workbench           : 07E339D0 01  07E35176    6000 Wait Workbench  (02) -
  3018. > D0: 00000000   D1: 00000000   D2: 80000000   D3: 00000000
  3019. > D4: 00000000   D5: 00000001   D6: 40000000   D7: 80000000
  3020. > A0: 07E321B4   A1: 07E321B4   A2: 07E321B4   A3: 07E376F6
  3021. > A4: 07E326B8   A5: 07E351A8
  3022. > Workbench           : 07E339D0 01  07E35176    6000 Rdy  Workbench  (02) -
  3023. > D0: 00243E70   D1: 00000002   D2: 80000000   D3: 00000000
  3024. > D4: 00000000   D5: 00000001   D6: 40000000   D7: 80000000
  3025. > A0: 07E321B4   A1: 07E0091E   A2: 07E321B4   A3: 07E376F6
  3026. > A4: 07E326B8   A5: 07E351A8
  3027.  
  3028. < remfunc availmem <enter>
  3029.  
  3030. < addfunc availmem exec print 'avail\0a' <enter>
  3031. > avail
  3032. > ...
  3033.  
  3034. < remfunc availmem <enter>
  3035.  
  3036. Everytime the 'availmem' Exec function is called, PowerVisor will print a
  3037. message on the PowerVisor screen. You can use very complex instructions.
  3038. When the command is executed you can make use of the 'rc' variable. This
  3039. variable will contain the pointer to a copy of the 'func' node for the
  3040. function. See the 'TheWizardCorner' for more information about function
  3041. nodes. Here is an example :
  3042.  
  3043. < addfunc availmem exec disp *(rc+24) <enter>
  3044. > 00000001 , 1
  3045. > 00000002 , 2
  3046. > ...
  3047.  
  3048. < remfunc availmem <enter>
  3049.  
  3050. When the command 'disp *(rc+24)' is executed (thus after 'AvailMem' is
  3051. called) 'rc' points to a copy of the function node. At offset 24 we
  3052. find the usagecounter.
  3053.  
  3054.  
  3055. Related commands: remfunc
  3056.  
  3057. Related lists: func
  3058.  
  3059. ================================= remfunc ====================================
  3060.  
  3061.    REMfunc <function monitor node>
  3062.  
  3063.  
  3064. Use this function to remove a ¹patch you installed with 'addfunc'.
  3065. Note that you must remove multiple patches of the same function in
  3066. reverse order. Note that PowerVisor will give an error if you try
  3067. to remove the oldest patch first.
  3068.  
  3069. Warning ! Be very careful when it is possible that some other program
  3070. is also patching the function. There could be conflicts. PowerVisor
  3071. tries to be friendly and checks everything, but you can't be sure that
  3072. other programs are as friendly as PowerVisor.
  3073.  
  3074. You can find the nodes for the function monitor in the 'func' list
  3075.  
  3076. 'remfunc' uses ¹autodefault to the 'func' list for the first argument.
  3077.  
  3078.  
  3079. Related commands: addfunc
  3080.  
  3081. Related lists: func
  3082.  
  3083. ================================== unasm =====================================
  3084.  
  3085.    Unasm [<start> [<instructions>]]
  3086.  
  3087.  
  3088. This command ²disassembles machinelanguage beginning at <start>.
  3089. <instructions> instructions are disassembled.
  3090. This command also shows ¹symbols and ¹breakpoints if there are any.
  3091. The disassembler supports the following processors :
  3092.    ¹68000, ¹68010, ¹68020, ¹68030, ¹68040, ¹68881, ¹68882, ¹68851
  3093.  
  3094. With no arguments this command continues the disassembly.
  3095.  
  3096. <instructions> is 20 by default.
  3097. PowerVisor remembers the last number of lines used with this command
  3098. and uses this number as the new default number of <instructions> for
  3099. the following 'unasm' commands.
  3100.  
  3101. Normally you will also see the ²hex data corresponding with the code.
  3102. You can disable this (and thus provide for longer labels in symbolic
  3103. disassembly) with the mode command (noshex).
  3104.  
  3105. If you press <enter> after an 'unasm' command, the disassembly will
  3106. continue.
  3107.  
  3108.  
  3109. Related commands: view memory mode
  3110.  
  3111. Related functions: lastmem lastlines
  3112.  
  3113. Related tutor files: LookingAtThings
  3114.  
  3115. ================================= libinfo ====================================
  3116.  
  3117.    LIBInfo <library function name>
  3118.  
  3119.  
  3120. This command shows you the library, the offset and the ²register usage
  3121. for a library function. You must have loaded the corresponding ¹fd-file
  3122. first.
  3123.  
  3124. < loadfd exec fd:exec_lib.fd <enter>
  3125. > ...
  3126.  
  3127. < libinfo putmsg <enter>
  3128. > 07E007CC   -366 (A0,A1)
  3129.  
  3130.  
  3131. Related commands: loadfd unloadfd libfunc
  3132.  
  3133. Related lists: fdfi
  3134.  
  3135. Related tutor files: LookingAtThings
  3136.  
  3137. ================================== list ======================================
  3138.  
  3139.    List [<list>]
  3140.  
  3141.  
  3142. With arguments this command ¹lists the ²current list. With an argument
  3143. 'list' lists <list> :-)
  3144.  
  3145.  
  3146. Related commands: info
  3147.  
  3148. Related tutor files: Lists GettingStarted
  3149.  
  3150. ================================= memory =====================================
  3151.  
  3152.    Memory [<start> [<bytes>]]
  3153.  
  3154.  
  3155. This command shows memory beginning at <start>.
  3156. <bytes> bytes are shown.
  3157.  
  3158. With no arguments this command continues the memory list.
  3159.  
  3160. <bytes> is 320 by default.
  3161. PowerVisor remembers the last number of bytes used with the command
  3162. (and the 'view' command) and uses this number as the new default
  3163. number of <bytes> for the following 'memory' (or 'view') commands.
  3164.  
  3165. Use the 'mode' command to install preferences for list memory:
  3166.    mode byte         for byte grouping
  3167.    mode word         for word grouping
  3168.    mode long         for longword grouping (default)
  3169.    mode ascii        for ascii viewing
  3170.  
  3171. Look at the 'view' command for a more powerful dump routine.
  3172.  
  3173. If you press <enter> after a 'memory' command, the listing will
  3174. continue.
  3175.  
  3176.  
  3177. Related commands: view unasm mode
  3178.  
  3179. Related functions: lastmem lastbytes
  3180.  
  3181. Related tutor files: LookingAtThings
  3182.  
  3183. ================================== info ======================================
  3184.  
  3185.    Info <object address> [<list>]
  3186.  
  3187.  
  3188. The 'info' command can be used to ask more information about an element of a
  3189. list.
  3190. Note that the information this command gives will contain no ¹BPTR's. These
  3191. are automatically converted to ¹APTR's.
  3192.  
  3193.  
  3194. Examples :
  3195.  
  3196. Let's assume we have the 'PowerVisor' task in the task list (this is in
  3197. fact the case since you have probably started PowerVisor :-) :
  3198.  
  3199. < info task:powervisor task <enter>
  3200.  
  3201. or
  3202.  
  3203. < info powervisor task <enter>
  3204.  
  3205. or
  3206.  
  3207. < info powervisor <enter>
  3208.  
  3209. or
  3210.  
  3211. < info task:powervisor <enter>
  3212.  
  3213. > Task node name      : Node     Pri StackPtr  StackS Stat Command        Acc
  3214. > ---------------------------------------------------------------------------
  3215. > PowerVisor1.0.task  : 07E70370 00  07E7137E    4096 Wait            TASK -
  3216. >
  3217. > IDNestCnt    : 00       | TDNestCnt    : FF       | SigAlloc     : E000FFFF
  3218. > SigWait      : E0000000 | SigRecvd     : 00000000 | SigExcept    : 00000000
  3219. > TrapAlloc    : 8000     | TrapAble     : 0000     | ExceptData   : 00000000
  3220. > ExceptCode   : 00F83AEC | TrapData     : 00000000 | TrapCode     : 07E77696
  3221. > SpLower      : 07E703D0 | SpUpper      : 07E713D0 | SpReg        : 07E7137E
  3222. > MemEntry     : 07E703BA | UserData     : 00000000 |
  3223.  
  3224. The first version of the command is the safest one. There is nothing that
  3225. can go wrong there.
  3226.  
  3227. The second version could crash if the ²current list is not equal to the 'task'
  3228. list. This is because PowerVisor will then try to interprete the element
  3229. starting with 'powervisor' in the other current list as a task. (If you
  3230. are lucky there is no such element in the current list, in that case you
  3231. simply get an error).
  3232.  
  3233. The third version is also safe although you could end up with the wrong
  3234. information for the wrong element in the wrong list.
  3235.  
  3236. The last version could crash if the current list is not equal to the
  3237. 'task' list. It is in fact the most dangerous version of all.
  3238.  
  3239. The 'info' command does not work for the 'Exec', 'IntB' and 'Graf' lists.
  3240. This is because these lists are structures and already give you all
  3241. information there is.
  3242.  
  3243.  
  3244. Related commands: list
  3245.  
  3246. Related tutor files: LookingAtThings
  3247.  
  3248. ================================= memtask ====================================
  3249.  
  3250.    MEMTask <task>
  3251.  
  3252.  
  3253. Show memory for a task. This is the memory which is allocated via
  3254. ¹AllocEntry and is attached to the task.
  3255.  
  3256. 'memtask' uses ¹autodefault for the 'task' list for the first argument.
  3257.  
  3258.  
  3259. Example :
  3260.  
  3261. < memtask powervisor <enter>
  3262. > 07EB4F28,132861736
  3263. >   07EB4F38         92
  3264. >   07EB4F40       4096
  3265.  
  3266. This means that there is one ³memory header node in the TC_MEMENTRY
  3267. list of the task. This node contains two entries. One with 92 allocated
  3268. bytes and one with 4096 allocated bytes. The first number in the
  3269. output is the address of the allocated memory.
  3270.  
  3271.  
  3272. Related lists: task
  3273.  
  3274. Related tutor files: LookingAtThings
  3275.  
  3276. ================================ remcrash ====================================
  3277.  
  3278.    REMCrash <crash node>
  3279.  
  3280.  
  3281. When a task crashes, PowerVisor makes a ²crash node. You can find this
  3282. node in the ²Crsh list. You can remove this node with the remcrash command.
  3283. Note that this command will not remove the task. The task will simply be
  3284. left waiting for a signal that will never come.
  3285.  
  3286.  
  3287. Related lists: crsh task
  3288.  
  3289. ================================= loadfd =====================================
  3290.  
  3291.    RC,<number of functions> <- LOADFd <library> <file-name>
  3292.  
  3293.  
  3294. This command loads a ¹fd-file in memory. After you have loaded an fd-file
  3295. you can use the ²library functions defined in it.
  3296.  
  3297. PowerVisor uses fd-files for the following features :
  3298.  
  3299.    - You can call library functions defined in the fd-file. These library
  3300.      functions can be called as you would call them using C
  3301.    - PowerVisor will know how to display library functions when you are
  3302.      debugging. This is very useful
  3303.    - You can use all loaded functions with the 'addfunc' command
  3304.    - You can ask information about all loaded library functions with
  3305.      the 'libfunc' and 'libinfo' commands
  3306.  
  3307. 'loadfd' will do nothing when the fd-file is already loaded in memory.
  3308. You can find all loaded fd-files in the 'FdFi' list.
  3309.  
  3310. 'rc' contains the pointer to the loaded fd-file node in the 'FdFi' list.
  3311. <number of functions> is equal to the number of functions actually loaded.
  3312. 'rc' will be equal to -1 when the fd-file already existed.
  3313.  
  3314.  
  3315. Example :
  3316.  
  3317. < loadfd exec fd:exec_lib.fd <enter>
  3318. > New functions: 0000007E,126
  3319.  
  3320. < libinfo allocmem <enter>
  3321. > 07E007D8   -198 (D0,D1)
  3322.  
  3323.  
  3324. Related commands: unloadfd libinfo libfunc
  3325.  
  3326. Related lists: fdfi
  3327.  
  3328. ================================= unlock =====================================
  3329.  
  3330.    UNLOCk <pointer to a lock>
  3331.  
  3332.  
  3333. This command ³unlocks a lock. The pointer to the lock must be an APTR,
  3334. not a BPTR !
  3335.  
  3336.  
  3337. Related commands: pathname
  3338.  
  3339. Related lists: lock fils
  3340.  
  3341. ================================== sync ======================================
  3342.  
  3343.    SYNc
  3344.  
  3345.  
  3346. Use this command to ¹synchronize PowerVisor with ARexx. Normally you can
  3347. execute an ¹ARexx script (with 'rx') and while this script is executing
  3348. you can still use PowerVisor for other things. When you use this command,
  3349. PowerVisor will disable user input. Only ARexx commands are accepted.
  3350.  
  3351. Do not forget to 'async' in your ARexx script.
  3352.  
  3353.  
  3354. Related commands: async rx
  3355.  
  3356. Related tutor files: Scripts
  3357.  
  3358. ================================== async =====================================
  3359.  
  3360.    ASYnc
  3361.  
  3362.  
  3363. Use this command to disable the ¹synchronization enabled with 'sync'.
  3364.  
  3365.  
  3366. Related commands: sync rx
  3367.  
  3368. Related tutor files: Scripts
  3369.  
  3370. ================================== hide ======================================
  3371.  
  3372.    HIde
  3373.  
  3374.  
  3375. Hide all output from commands issued from an ARexx script.
  3376. This is equivalent to using the '-' operator in front of a commandline
  3377. (when you are typing commands from PowerVisor). But you can't type a '-'
  3378. in front of an ¹ARexx commandline, so you have to use 'hide'.
  3379.  
  3380.  
  3381. Related commands: unhide rx
  3382.  
  3383. Related tutor files: Scripts
  3384.  
  3385. ================================= unhide =====================================
  3386.  
  3387.    UNHide
  3388.  
  3389.  
  3390. Unhide all output from commands issued from an ARexx script.
  3391.  
  3392.  
  3393. Related commands: hide rx
  3394.  
  3395. Related tutor files: Scripts
  3396.  
  3397. ================================== front =====================================
  3398.  
  3399.    FROnt
  3400.  
  3401.  
  3402. Bring the ²PowerVisor screen to the ¹front from within an ¹ARexx script.
  3403.  
  3404.  
  3405. Related commands: rx
  3406.  
  3407. Related tutor files: Scripts
  3408.  
  3409. =============================== closewindow ==================================
  3410.  
  3411.    CLOsewindow <window>
  3412.  
  3413.  
  3414. This command closes a ¹window. The menu's are cleared. The ¹DMRequest is
  3415. cleared. All ¹requesters attached to this window are removed and the ¹IDCMP
  3416. flags are set to zero.
  3417.  
  3418. 'closewindow' uses ¹autodefault to the 'wins' list for the first argument.
  3419.  
  3420. Be careful with this command. Closing windows that do not belong to you
  3421. is not so friendly for the other program (of course you can simply kill
  3422. or freeze the other command and you will hear no complaints :-)
  3423.  
  3424.  
  3425. Related commands: closescreen
  3426.  
  3427. Related lists: wins
  3428.  
  3429. ================================== hunks =====================================
  3430.  
  3431.    HUnks <process>
  3432.  
  3433.  
  3434. Show all the ¹hunks for a process
  3435.  
  3436. 'hunks' uses ¹autodefault to the 'task' list for the first and only argument.
  3437.  
  3438.  
  3439. Related lists: task
  3440.  
  3441. Related tutor files: LookingAtThings
  3442.  
  3443. ================================= attach =====================================
  3444.  
  3445.    <attach node> <- ATtach <command string> <code> <qualifier>
  3446.                     [('e' | 'c') ['+']]
  3447.  
  3448.  
  3449. This command ¹attaches a command to a ¹key. You can use this command to
  3450. initialize your ¹functionkeys (such a command attached to a key is
  3451. called a macro).
  3452.  
  3453. With 'remattach' you can remove ¹macros.
  3454.  
  3455. When you press the defined key, the command will be copied to the
  3456. commandline. The effect is exactly the same as it would be if you
  3457. had typed in the command and pressed enter.
  3458.  
  3459. If you do not want the command to be ¹feedbacked on your screen if you
  3460. press the assigned key, you may want to precede the commandline with a '~'.
  3461.  
  3462. If you use the 'e' (Exec) option, the command is executed without disturbing
  3463. the commandline. The command is not feedbacked on the screen.
  3464.  
  3465. If you use the 'c' (Copy) option, the <command string> is copied to the
  3466. current position in the stringgadget. Nothing is executed.
  3467.  
  3468. If you use either the 'e' or 'c' options, you can add a '+' to indicate
  3469. that the key should not be filtered out by the input handler. This means
  3470. that the pressed key is handled normally. After the default behaviour,
  3471. the command is executed ('e') or the command string is copied to the
  3472. commandline ('c').
  3473.  
  3474.  
  3475. Example :
  3476.  
  3477. To add the 'list' command to the <F1> key you can use :
  3478.  
  3479. < attach 'list' 050 0 <enter>
  3480.  
  3481. If you press <F1> 'list' is put on the ¹stringgadget and an enter is
  3482. simulated (this means that 'list' is also put in the ²history buffer).
  3483.  
  3484. If you do not want the stringgadget to be disturbed you can use :
  3485.  
  3486. < attach 'list' 050 0 e <enter>
  3487.  
  3488.  
  3489. Related commands: remattach
  3490.  
  3491. Related lists: attc
  3492.  
  3493. Related tutor files: InstallingPowerVisor Scripts
  3494.  
  3495. ================================ remattach ===================================
  3496.  
  3497.    REMAttach <attach node>
  3498.  
  3499.  
  3500. Remove a ¹macro.
  3501.  
  3502. 'remattach' uses ¹autodefault to the 'attc' list for the first argument.
  3503.  
  3504.  
  3505. Example :
  3506.  
  3507. Go to the attachement list :
  3508.  
  3509. < attc <enter>
  3510. < list <enter>
  3511.  
  3512. > Node     Code Qualifier Command
  3513. > ---------------------------------------------------------------------------
  3514. > 00C184E0   81         2 'info task:'trackdisk.device' task                '
  3515. > 00C34268   80         0 'list                                             '
  3516.  
  3517. < remattach 00c34268 <enter>
  3518.  
  3519.  
  3520. Related commands: attach list
  3521.  
  3522. Related lists: attc
  3523.  
  3524. Related tutor files: InstallingPowerVisor Scripts
  3525.  
  3526. =============================== closescreen ==================================
  3527.  
  3528.    CLOSEScreen <screen>
  3529.  
  3530.  
  3531. This command closes a ¹screen. All ¹windows on this screen are also closed.
  3532.  
  3533. 'closescreen' uses ¹autodefault to the 'scrs' list for the first argument.
  3534.  
  3535. Be careful with this command. Closing screens that do not belong to you
  3536. is not so friendly for the other program.
  3537.  
  3538.  
  3539. Related commands: closewindow
  3540.  
  3541. Related lists: scrs
  3542.  
  3543. =================================== log ======================================
  3544.  
  3545.    LOG [<logical window> <filename>]
  3546.  
  3547.  
  3548. This command enables or disables the ¹logging of all output in a ²logical window
  3549. to a file. PowerVisor only supports one ²log file. If you open one for a
  3550. logical window, PV will automatically close the other log file (if there is
  3551. one).
  3552.  
  3553. 'log' uses ¹autodefault to the 'lwin' list for the first argument.
  3554.  
  3555. You can disable (and close) command logging if you give no arguments to
  3556. this command.
  3557.  
  3558. You can also use the 'to' command to make a temporary log for one command
  3559. (or a group of commands).
  3560.  
  3561. When you use the ²'-' prefix in front of the commandline, PowerVisor will show
  3562. no output on the ³current logical window. The output will only go to the file.
  3563. When you use the ²'~' prefix in front of the commandline, PowerVisor will not
  3564. show the ¹feedback line on the screen (and also not in the file).
  3565.  
  3566.  
  3567. Related commands: to
  3568.  
  3569. Related lists: lwin
  3570.  
  3571. Related tutor files: Screen
  3572.  
  3573. ================================= taskpri ====================================
  3574.  
  3575.    TASKPri <task ptr> <priority>
  3576.  
  3577.  
  3578. Set the ¹priority for a task.
  3579.  
  3580. 'taskpri' uses ¹autodefault to the 'task' list for the first argument.
  3581.  
  3582.  
  3583. Example:
  3584.  
  3585. < taskpri task:test -5 <enter>
  3586.  
  3587.  
  3588. Related lists: task
  3589.  
  3590. ================================ pathname ====================================
  3591.  
  3592.    PAthname <lock>
  3593.  
  3594.  
  3595. This command prints the ¹pathname for a ¹lock. If <lock> does not point to
  3596. a lock, 'pathname' prints an error. Note that <lock> must be an APTR and
  3597. not a BPTR !
  3598.  
  3599. This command returns a string if used from ¹ARexx.
  3600.  
  3601.  
  3602. Related commands: unlock
  3603.  
  3604. Related lists: lock fils
  3605.  
  3606. ================================ unloadfd ====================================
  3607.  
  3608.    UNLoadfd <fd-file node>
  3609.  
  3610.  
  3611. Remove all ¹functiondefinitions in a ¹fd-file. You can find the
  3612. nodes for fd-files in the 'FDFi' list.
  3613. After this command you cannot use the ²library functions from this
  3614. fd-file anymore.
  3615.  
  3616. 'unloadfd' uses ¹autodefault to the 'FdFi' list for the first argument.
  3617.  
  3618.  
  3619. Related commands: loadfd libfunc libinfo
  3620.  
  3621. Related lists: fdfi
  3622.  
  3623. ================================= script =====================================
  3624.  
  3625.    <result> <- SCRIpt <script file> [<commandline>]
  3626.  
  3627.  
  3628. The 'script' command executes <script file>.
  3629. You can use comments in ²script files by preceding the line with ';'.
  3630.  
  3631. You can also execute ²machinelanguage scripts with this command.
  3632. These machinelanguage scripts are normal executable files. You can
  3633. write them in any language you wish as long as that language
  3634. has ³AmigaDOS executable files as output format. Although other
  3635. languages (like C) are possible we still call these scripts machinelanguage
  3636. scripts or ²ML scripts.
  3637.  
  3638. When a ML script is executed the registers contain the following info :
  3639.  
  3640.    a0=pointer to <commandline>
  3641.    a1=pointer to the ²'rc' variable. (You can use this to return something
  3642.       to PowerVisor)
  3643.    a2=pointer to the ¹PVCallTable.
  3644.    the value in d0 is returned to PowerVisor
  3645.  
  3646. <result> is the value returned in d0 (if ML script).
  3647.  
  3648. When you try to execute a script, PowerVisor will first try to execute
  3649. the script in the ²current directory, if that does not succeed, PowerVisor
  3650. will try the ¹s:pv/ subdirectory. This is the recommended place for scripts.
  3651.  
  3652.  
  3653. Related commands: rx resident unresident go
  3654.  
  3655. Related tutor files: Scripts
  3656.  
  3657. ================================ resident ====================================
  3658.  
  3659.    RC,<Pointer to code> <- RESIdent [<filename>]
  3660.  
  3661.  
  3662. The 'resident' command loads a given file (with ¹'LoadSeg') and stores a
  3663. pointer to the start of the program in 'RC'. You can use this pointer
  3664. with the 'go' command.
  3665.  
  3666. You can make ²ML scripts resident but you must make sure that the
  3667. routines are pure.
  3668.  
  3669. If you give no argument to 'resident' you will get a list with all
  3670. loaded code pointers.
  3671.  
  3672.  
  3673. Related commands: unresident go script
  3674.  
  3675. Related tutor files: Scripts
  3676.  
  3677. =============================== unresident ===================================
  3678.  
  3679.    UNResident <Pointer to code>
  3680.  
  3681.  
  3682. Unload a file loaded with 'resident'. All resident files are automatically
  3683. unloaded when PowerVisor quits.
  3684.  
  3685.  
  3686. Related commands: resident go script
  3687.  
  3688. Related tutor files: Scripts
  3689.  
  3690. ================================== debug =====================================
  3691.  
  3692.    RC <- DEBug 'n' | 'c' | 'l' <filename> | 't' <task node> | ('r'|'f'|'u')
  3693.          [<debug node>] | 'd' <name>
  3694.  
  3695.  
  3696. Use this command to control the ²debug tasks.
  3697.  
  3698.    debug n     Waits for the next ¹'LoadSeg' and make a debugtask from that
  3699.                process.
  3700.    debug c     Waits for the next ¹'AddTask' and make a debugtask from that
  3701.                task.
  3702.    debug l <filename>
  3703.                Load an executable program to debug.
  3704.                ¹Symbols are automatically loaded if they exist.
  3705.                Warning ! If you use the ²AmigaDOS 1.3 version, PowerVisor
  3706.                will NOT create a CLI for the loaded program. Therefore
  3707.                it is better to use 'debug n' if possible. In ²AmigaDOS 2.0
  3708.                the ²CLI structure is properly allocated (using
  3709.                'CreateNewProc')
  3710.    debug t <task node>
  3711.                Take an existing running task to debug.
  3712.                You can also take a ²crash node to debug. In that case
  3713.                you can singlestep the task from where it crashed
  3714.    debug f     Remove the current debugnode and freeze the task
  3715.    debug f <debug node>
  3716.                Remove the specified debugnode and ¹freeze
  3717.                This command is mostly used when 'debug n' or 'debug t' was
  3718.                used to start the debugging
  3719.    debug r     Remove the current debugnode.
  3720.                The task will simply continue executing from where it
  3721.                was interrupted.
  3722.                This command is mostly used when 'debug n', 'debug c' or
  3723.                'debug t' was used to start the debugging
  3724.                If you have AmigaDOS 2.0 you may also use 'debug r' with
  3725.                'debug l'
  3726.    debug r <debug node>
  3727.                Remove the specified debugnode.
  3728.    debug u     Remove the current debugnode.
  3729.                The task will be stopped ('RemTask') and the program will
  3730.                be unloaded (UnLoadSeg) if the debug task was loaded with
  3731.                'debug l'. This command is mostly used when 'debug l' was
  3732.                used
  3733.                If you have AmigaDOS 2.0 you may also use 'debug u' with
  3734.                'debug n'
  3735.    debug u <debug node>
  3736.                Remove the specified debugnode.
  3737.    debug d <name>
  3738.                Create ²dummy debugnode for symbols only.
  3739.  
  3740. When a new debug task is created, it is put in the 'DBug' list.
  3741. 'rc' contains the pointer to the new debug node.
  3742.  
  3743. 'debug' uses ¹autodefault to the 'dbug' list for the <debug node> argument.
  3744. 'debug' uses ¹autodefault to the 'task' list for the <task node> argument.
  3745.  
  3746.  
  3747. Related commands: duse trace symbol break source
  3748.  
  3749. Related functions: getdebug
  3750.  
  3751. Related list: dbug task
  3752.  
  3753. Related tutor files: Debug
  3754.  
  3755. ================================ drefresh ====================================
  3756.  
  3757.    DRefresh
  3758.  
  3759.  
  3760. This command refreshes the debug display. 'drefresh' is only useful when
  3761. you are in ²fullscreen debugging mode.
  3762.  
  3763. See the 'prefs', 'dwin' and 'swin' commands to install the fullscreen
  3764. debugger.
  3765.  
  3766.  
  3767. Related commands: dwin swin debug duse prefs
  3768.  
  3769. Related lists: dbug
  3770.  
  3771. Related tutor files: Debug
  3772.  
  3773. ================================== duse ======================================
  3774.  
  3775.    DUse <debug node>
  3776.  
  3777.  
  3778. Set the ³current debug task.
  3779. Use the 'getdebug' function to determine the ³current debug node.
  3780.  
  3781. Also see the 'with' command to temporarily set the current debug node.
  3782.  
  3783. 'duse' uses ¹autodefault to the 'dbug' list for the first argument.
  3784.  
  3785.  
  3786. Related commands: with debug break trace drefresh symbol
  3787.  
  3788. Related functions: getdebug
  3789.  
  3790. Related lists: dbug
  3791.  
  3792. Related tutor files: Debug
  3793.  
  3794. ================================== with ======================================
  3795.  
  3796.    WITh <debug node> <command>
  3797.  
  3798.  
  3799. This command temporarily sets another ²current debug task and executes
  3800. <command>. This is useful if you want to view memory with another set
  3801. of ¹symbols for example. Or if you want to change the ¹registers of another
  3802. debug task.
  3803.  
  3804. 'with' uses ¹autodefault to the 'dbug' list for the first argument.
  3805.  
  3806.  
  3807. Example:
  3808.  
  3809. < with MyBuggyProgram memory 070540 <enter>
  3810. > ...
  3811.  
  3812.  
  3813. Related commands: duse debug break trace drefresh symbol
  3814.  
  3815. Related functions: getdebug
  3816.  
  3817. Related lists: dbug
  3818.  
  3819. Related tutor files: Debug
  3820.  
  3821. ================================== trace =====================================
  3822.  
  3823.    TRace [ 'n' <number> | 'b' | 'r' <register> | 'u'['t'] <address>
  3824.          | 'o'['t'] | 'c' <condition> | 's' | 'g'['t'] | 'h' | 'f'
  3825.          | 't' | 'j' ]
  3826.  
  3827. Use this command to ¹singlestep a program (Use 'debug' first to make
  3828. a debug task).
  3829.  
  3830.    trace n <number>        Trace <number> instructions. Tracing is done
  3831.                            in ²singlestep mode.
  3832.    trace b                 Trace until the next branch (singlestep mode).
  3833.    trace t                 Skip BSR or JSR. If not a ¹BSR or ¹JSR simple
  3834.                            trace is used. This function works in ¹ROM.
  3835.                            ²Execute mode is used.
  3836.    trace j                 Trace until use of library ROM function:
  3837.                            JSR or JMP (a6).
  3838.                            Tracing is done in singlestep mode.
  3839.    trace r <register>      Trace until a specified register is changed
  3840.                            (singlestep mode).
  3841.                            register can be d0-d7, a0-a6 or sp.
  3842.    trace u <address>       Trace until the programcounter is equal to
  3843.                            <address>. Tracing is done in execute mode.
  3844.    trace ut <address>      Same as above but use singlestep mode instead.
  3845.    trace o                 Trace over the current instruction. Tracing
  3846.                            is done in execute mode.
  3847.    trace ot                Same as above but use singlestep mode instead.
  3848.    trace c <condition>     Trace until a condition is satisfied. This
  3849.                            condition is a string. Example:
  3850.                            trace c '@d1==@d2' will trace until register
  3851.                            d1 is equal to register d2. Tracing is done
  3852.                            in singlestep mode.
  3853.    trace s                 Skip an instruction
  3854.    trace i                 Do not trace. Simply show the current registers
  3855.                            and instructions.
  3856.    trace g                 Execute until a breakpoint is encountered
  3857.    trace gt                Same as above but tracing is done in singlestep
  3858.                            mode.
  3859.    trace h                 ³Interrupt the tracing or executing of the
  3860.                            current debug task.
  3861.    trace f                 Interrupt the tracing or executing of the
  3862.                            current debug task as soon as this task is
  3863.                            in ready state.
  3864.  
  3865.  
  3866. Related commands: debug break duse drefresh dstart dscroll dwin swin with
  3867.                   symbol
  3868.  
  3869. Related functions: getdebug
  3870.  
  3871. Related lists: dbug
  3872.  
  3873. Related tutor files: Debug
  3874.  
  3875. ================================== break =====================================
  3876.  
  3877.    RC <- Break ('a'|'c'|'n'|'t'|'p'|'r') <address> [<condition>|<timeout>]
  3878.  
  3879.  
  3880. Install a ¹breakpoint for the ²current debugtask.
  3881.  
  3882.    break a <address> <timeout>   Breakpoint only breaks after the <timeout>
  3883.                                  counter becomes zero.
  3884.    break c <address> <condition> Only break if the condition is true.
  3885.    break n <address>             ²Normal breakpoint.
  3886.    break t <address>             ²Temporary breakpoint.
  3887.    break p <address>             ²Profiler breakpoint. Does not break. Only
  3888.                                  increments a counter.
  3889.    break r <breakpoint number>   ³Remove a breakpoint.
  3890.  
  3891. 'rc' contains the pointer to the new breakpoint node.
  3892.  
  3893.  
  3894. Examples :
  3895.  
  3896. < break c 00c05320 '(@d0<@d1)&&(@pc>00c05380)'
  3897.  
  3898. This breakpoint will cause a break if d0 is lower than d1 and
  3899. the programcounter is greater than 00c05380.
  3900.  
  3901.  
  3902. Related commands: debug trace duse with symbol
  3903.  
  3904. Related functions: getdebug
  3905.  
  3906. Related lists: dbug
  3907.  
  3908. Related tutor files: Debug
  3909.  
  3910. ================================= source =====================================
  3911.  
  3912.    SOurce 'l' <filename> [<hunkaddress>] | 'w' <address> | 's' |
  3913.           't' <tab size> | 'r' | 'c' | 'g' <line>
  3914.  
  3915.  
  3916. Control the ¹source for the ²current debugtask. Note that the source
  3917. for the current debug task is always displayed in the 'Source' logical
  3918. window. You must compile or assemble your program with debug hunk
  3919. information if you want to use this feature. PowerVisor currently
  3920. understands the debug hunk format used by 'Macro68' (include the 'debug'
  3921. statement in your source) and by 'SAS/C' (compile with '-d1', do not
  3922. use any number other than 1!). This format is also compatible with the
  3923. debug hunk format used by Devpac3. The 'source' command could work for
  3924. other compilers too but this is not tested.
  3925.  
  3926.    source l <filename> [<hunkaddress>]
  3927.                ³Load the source for the current debug task.
  3928.                If you give <hunkaddress>, PowerVisor will load the source
  3929.                for the given ¹hunks. This is extremely useful when you have
  3930.                created a ³dummy debug task.
  3931.                Note that <hunkaddress> is 4 more than the number given in
  3932.                the hunklist with the 'hunks' command.
  3933.                Note that <hunkaddress> is not optional when you are loading
  3934.                the source for a dummy debug task
  3935.    source w <address>
  3936.                Use this command to see in which source file and on which
  3937.                line a specific address is located
  3938.    source t <tab size>
  3939.                Set the tab size used for the source display. The default
  3940.                tab value is 8
  3941.    source s
  3942.                Show all sources for the current debug task
  3943.    source r
  3944.                Redisplay the source in the 'Source' logical window
  3945.    source c
  3946.                Clear all sources and unload them
  3947.    source g <line>
  3948.                Goto a line in the ³current loaded source. Note that you can
  3949.                also scroll in the ²current file with the mouse. Simply press
  3950.                the left mouse button in the first or the last line of the
  3951.                ³'Source' logical window
  3952.  
  3953.  
  3954. Related commands: debug trace break duse with symbol swin
  3955.  
  3956. Related functions: getdebug
  3957.  
  3958. Related lists: dbug
  3959.  
  3960. Related tutor files: Debug
  3961.  
  3962. ================================= symbol =====================================
  3963.  
  3964.    SYmbol 'l' <filename> [<hunkaddress>] | 'c' | 'a' <symbol> <value> |
  3965.           'r' <symbol> | 's'
  3966.  
  3967.  
  3968. Control the ¹symboltable for the ²current debugtask.
  3969.  
  3970.    symbol l <filename> [<hunkaddress>]
  3971.                ³Load the symbols for the current debug task.
  3972.                If you give <hunkaddress>, PowerVisor will load the symbols
  3973.                for the given ¹hunks. This is extremely useful when you have
  3974.                created a ³dummy debug task.
  3975.                Note that <hunkaddress> is 4 more than the number given in
  3976.                the hunklist with the 'hunks' command.
  3977.                Note that <hunkaddress> is not optional when you are loading
  3978.                symbols for a dummy debug task.
  3979.    symbol c    ³Clear all symbols for the current debug task.
  3980.    symbol a <symbol> <value>
  3981.                ³Add a symbol with a specified value the the symbol list
  3982.                for the current debug task.
  3983.    symbol r <symbol>
  3984.                ³Remove a symbol from the symbol list for the current
  3985.                debug task.
  3986.    symbol s    ³List all symbols for the current debug task.
  3987.  
  3988.  
  3989. Related commands: debug trace break duse with source
  3990.  
  3991. Related functions: getdebug
  3992.  
  3993. Related lists: dbug
  3994.  
  3995. Related tutor files: Debug
  3996.  
  3997. ================================= rblock =====================================
  3998.  
  3999.    RC,<address> <- RBlock <Unit number> <block number> [<address>]
  4000.  
  4001.  
  4002. ³Read a block from a disk. This command will allocate the memory for it
  4003. if you do not specify <address>. The pointer to this memory will be
  4004. stored in the ²'rc' variable. You can read a block in your own memory
  4005. if you specify the address. This address must be in ²chip ram.
  4006. You can free the memory this command allocated with 'free'.
  4007.  
  4008. The memory allocated with this command is automatically freed when
  4009. PowerVisor quits. You can also free this memory with the 'cleanup' command.
  4010.  
  4011.  
  4012. Related commands: wblock cleanup showalloc
  4013.  
  4014. Related functions: alloc free
  4015.  
  4016. ================================== void ======================================
  4017.  
  4018.    <result> <- Void {<argument> ...}
  4019.  
  4020.  
  4021. This command does absolutely nothing except evaluating it's arguments.
  4022. <result> is the result of the last evaluated ¹expression.
  4023. Note that this command is useful in the following situations :
  4024.  
  4025.    - calling ²library functions or ²PowerVisor functions when you are not
  4026.      interested in the result of this function
  4027.    - returning a value (<result>) from a ²group operator :
  4028.          < disp {a=4;b=5;void a+b} <enter>
  4029.          > 00000009 , 9
  4030.    - you can also use the 'void' command to copy a ²PowerVisor expression
  4031.      to an ²ARexx variable :
  4032.          ARexx< options results
  4033.          ARexx< 'void a+4'
  4034.          ARexx< b=result
  4035.  
  4036.  
  4037. Related commands: disp
  4038.  
  4039. Related functions: if eval
  4040.  
  4041. Related tutor files: GettingStarted Expressions
  4042.  
  4043. ================================= wblock =====================================
  4044.  
  4045.    WBlock <Unit number> <block number> <address>
  4046.  
  4047.  
  4048. ³Write a block to disk. <address> must be in ²chip ram.
  4049. A block is 1024 bytes big.
  4050.  
  4051.  
  4052. Related commands: rblock
  4053.  
  4054. ================================= opendev ====================================
  4055.  
  4056.    RC,<pvdevice> <- Opendev <device name> [<unit> [<flags>]]
  4057.  
  4058.  
  4059. ³Open a device for use with the 'closedev','devinfo' and 'devcmd' commands.
  4060. The result (in RC) is a pointer to a block containing the pointer to the
  4061. port and the pointer to the ¹IORequest (256 bytes big) in that order.
  4062. We call this block a ¹PVDevice.
  4063. Use this block as the argument to 'closedev','devinfo' and 'devcmd'.
  4064.  
  4065.  
  4066. Example :
  4067.  
  4068. Open the device :
  4069.  
  4070. < dev={opendev "trackdisk.device"} <enter>
  4071.  
  4072. Put the drive motor on :
  4073.  
  4074. < devcmd dev 9 0 1 <enter>
  4075.  
  4076. Put the drive motor off :
  4077.  
  4078. < devcmd dev 9 0 0 <enter>
  4079.  
  4080. Ask more information :
  4081.  
  4082. < devinfo dev <enter>
  4083. > MsgPort node name   : Node     Pri SigBit SigTask
  4084. >                     : 07E9D2A0 00      20 07EB5948
  4085. >
  4086. > IORequest    : 07E9E130 | Succ         : 00000000 | Pred         : 00000000
  4087. > Type         : 05       | Pri          : 00       |
  4088. > Name         :
  4089. > ReplyPort    : 07E9D2A0 | MN_Length    : 0100     | Device       : 07E077AC
  4090. > Unit         : 07E0C5A0 | Command      : 0000     | Flags        : 00
  4091. > Error        : 00       | Actual       : 00000000 | Length       : 00000000
  4092. > Data         : 00000000 | Offset       : 00000000 |
  4093.  
  4094. Close the device :
  4095.  
  4096. < closedev dev <enter>
  4097.  
  4098.  
  4099. Related commands: closedev devcmd devinfo
  4100.  
  4101. ================================ closedev ====================================
  4102.  
  4103.    CLOSEDev <device block>
  4104.  
  4105.  
  4106. ³Close a device opened with 'opendev'.
  4107.  
  4108.  
  4109. Related commands: opendev devcmd devinfo
  4110.  
  4111. ================================= devinfo ====================================
  4112.  
  4113.    DEVInfo <device block>
  4114.  
  4115.  
  4116. Show ¹port and ¹iorequest information for a device opened with 'opendev'.
  4117.  
  4118.  
  4119. Related commands: opendev closedev devcmd
  4120.  
  4121. ================================= devcmd =====================================
  4122.  
  4123.    RC <- DEVCmd <dev> <command> [<flags> [<length> [<data> [<offset>]]]]
  4124.  
  4125.  
  4126. Give a command to a device opened with 'opendev'. The parameters specified
  4127. are for the ¹IORequest. If you do not specify these parameters ('flags',...)
  4128. the IORequest will remain unchanged. The variable ¹'rc' contains the result
  4129. of the 'DoIO' function.
  4130.  
  4131.  
  4132. Related commands: opendev closedev devinfo
  4133.  
  4134. ================================= remhand ====================================
  4135.  
  4136.    REMHand <input handler>
  4137.  
  4138.  
  4139. Remove an ²input handler. You can list the ¹inputhandlers in the 'IHan' list.
  4140.  
  4141. 'remhand' uses ¹autodefault to the 'ihan' list for the first argument.
  4142.  
  4143.  
  4144. Related lists: ihan
  4145.  
  4146. =================================== go =======================================
  4147.  
  4148.    <result> <- GO <address> [<commandline>]
  4149.  
  4150.  
  4151. Start executing at <address>.
  4152. You can make ²inline code with this command.
  4153. The ¹registers are preset to certain values (see the 'script' command).
  4154.  
  4155. With the 'resident' command you can load a ml-script into memory. You
  4156. can use the 'go' command to execute this script.
  4157.  
  4158.  
  4159. Example :
  4160.  
  4161. < disp {go "\70\01Nu"} <enter>
  4162. > 00000001 , 1
  4163.  
  4164. Because this program is equivalent to :
  4165.  
  4166.       moveq.l  #1,d0
  4167.       rts
  4168.  
  4169.  
  4170. Related commands: script pvcall resident unresident
  4171.  
  4172. Related tutor files: Scripts
  4173.  
  4174. ================================== help ======================================
  4175.  
  4176.    Help [<topic>]
  4177.  
  4178.  
  4179. Ask more information about a certain ¹topic. You must have ¹PowerVisor-help
  4180. and ¹PowerVisor-ctrl installed in your s: or program directory before you can
  4181. use 'help'. If you omit <topic> you will get the ²main menu.
  4182.  
  4183.  
  4184. Related tutor files: GettingStarted
  4185.  
  4186. =================================== to =======================================
  4187.  
  4188.    TO <file> <command>
  4189.  
  4190.  
  4191. Log the output of one command (or group) to a file. After the command
  4192. has executed the previous ²log file (if any) is reinstalled.
  4193.  
  4194.  
  4195. Examples :
  4196.  
  4197. < to ram:MyOutputFile list task <enter>
  4198. > ...
  4199.  
  4200. The output will still appear on the ³current logical window. This command
  4201. temporarily works like the 'log' command. The real log file is restored
  4202. after this command exits.
  4203. If you only want output in a file you can use :
  4204.  
  4205. < -to ram:MyOutputFile list task <enter>
  4206.  
  4207. or
  4208.  
  4209. < to ram:MyOutputFile -list task <enter>
  4210.  
  4211. You can also combine the 'to' and the 'on' command :
  4212.  
  4213. First open the 'Extra' window (if it is not already open) :
  4214. < xwin <enter>
  4215.  
  4216. < to ram:MyOutputFile on extra list task <enter>
  4217. > ...
  4218.  
  4219. This command will list all tasks on the 'Extra' logical window. No output
  4220. will be written to the file since the 'to' command only redirects the output
  4221. from the current logical window. However :
  4222.  
  4223. < on extra to ram:MyOutputFile list task <enter>
  4224. > ...
  4225.  
  4226. will also list all task on the extra window. The difference is that this
  4227. time there will be output in the file since the 'to' command redirects
  4228. the output from the current logical window. At the time the 'to' command
  4229. is executed, this logical window is equal to 'Extra'.
  4230.  
  4231.  
  4232. Related commands: log xwin on
  4233.  
  4234. Related lists: lwin
  4235.  
  4236. Related tutor files: Screen
  4237.  
  4238. =============================== saveconfig ===================================
  4239.  
  4240.    SAVEConfig
  4241.  
  4242.  
  4243. This commands saves the current 'mode' and 'prefs' settings to the file
  4244. ¹s:PowerVisor-config. They will automatically be loaded when you start
  4245. PowerVisor.
  4246.  
  4247. This command also remembers the state of all the ³standard logical windows
  4248. (their position and if they are on a physical window or not) (Note that
  4249. this feature is new for PowerVisor V1.13). This means that you can simply
  4250. use the 'screen' command and the mouse to position all the standard
  4251. windows (see also the 'mode intui' option) and 'saveconfig' will save
  4252. the positions (Note that you still have to open them manually).
  4253.  
  4254.  
  4255. Related commands: prefs mode
  4256.  
  4257. Related tutor files: InstallingPowerVisor
  4258.  
  4259. ================================== prefs =====================================
  4260.  
  4261.    PREfs ('history' | 'key' | 'screen' | 'stack' | 'logwin' | 'linelen' |
  4262.          'debug' | 'dmode' | 'pens' | 'font') [<arguments> ...]
  4263.  
  4264.  
  4265. You can set/get ¹preferences with this command. All things you install with
  4266. this command can be saved with the 'saveconfig' command.
  4267. If you don't specify the optional arguments in the following templates, you
  4268. will get the current values.
  4269.  
  4270. Warning ! Changing preferences values is not always safe. For some
  4271. preferences (especially 'font' and 'screen') it is best to
  4272. set the preferences, 'saveconfig' them, 'quit' PowerVisor and restart
  4273. PowerVisor. Only after a full restart will PowerVisor correctly account
  4274. for all changes. 'history', 'key', 'stack', 'logwin', 'debug',
  4275. 'dmode' and 'pens' are save. You may change them as much as you like,
  4276. PowerVisor will not get confused.
  4277. Changing 'linelen' has no effect at all. You have to quit to see
  4278. the changes.
  4279.  
  4280. The following preferences arguments are allowed :
  4281.  
  4282.    - history [<history value>]
  4283.          Install the maximum number of lines in the ¹history. Default is 20
  4284.  
  4285.    - key <key number> [<code> <qualifier>]
  4286.          nr name                 default key           code    qualifier
  4287.          --------------------------------------------------------------------
  4288.          0  interrupt key        <esc>                 045     0
  4289.          1  hot key              <r-shift>+<r-alt>+'/' 03A     022
  4290.          2  pause key            <r-alt>+<help>        05F     020
  4291.          3  cycle active logwin  <tab>                 042     0
  4292.          4  history up           <arrow up>            04C     0
  4293.          5  history down         <arrow down>          04D     0
  4294.  
  4295.    - screen [<w> <h>]
  4296.          Define the width and the height of the PowerVisor screen. If you use
  4297.          -1 for any of these parameters the default screen width or height
  4298.          will be used.
  4299.          If you have AmigaDOS 2.0 you can install a big screen. You can scroll
  4300.          in this screen by moving the mousepointer out of the visible area.
  4301.          The default width and height are :
  4302.             -1,-1
  4303.  
  4304.    - stack [<stack fail level>]
  4305.          Set the amount of ¹stackspace left before PowerVisor will halt
  4306.          the task and give a warning (only if 'account' is on)
  4307.          default value is 40
  4308.          This value is also used by the 'stack' command.
  4309.  
  4310.    - logwin <full standard logwin name> [<cols> <rows> <mask> <flags>]
  4311.          supported logwins :
  4312.             Main,Extra,Refresh,Debug,Rexx,PPrint
  4313.          bits in flag :
  4314.             4   = ²-MORE- enabled
  4315.             32  = ¹real-top
  4316.             64  = ¹statusline off
  4317.             128 = ¹interrupt off
  4318.             256 = ³auto output snap
  4319.  
  4320.    - linelen [<line length>]
  4321.          Set the maximum length of the ²stringgadget commandline. This is also
  4322.          the maximum number of characters that may be used in ¹scripts (not
  4323.          ²ARexx scripts).
  4324.          default value is 400
  4325.  
  4326.    - debug [<instructions> <show previous instruction>]
  4327.          <instructions> is the number of instructions to disassemble after
  4328.          each trace (default is 5)
  4329.          if <show previous instruction> is 1, the previous instruction
  4330.          is disassembled (default is 1)
  4331.  
  4332.    - dmode 'n'|'r'|'c'|'f'
  4333.          Set the information that should be displayed after a trace. This
  4334.          parameter is not used by the fullscreen debugger since the
  4335.          fullscreen debugger always shows all information.
  4336.             n        show no info at all. This is useful when you are using
  4337.                      the fullscreen debugger and you do not want to be
  4338.                      disturbed by output on the current logical window
  4339.             r        show only registers
  4340.             c        show only code
  4341.             f        show registers and code (default)
  4342.  
  4343.    - pens [<pen number> <pen color>]
  4344.          With this command you can install all colors used in PowerVisor.
  4345.          There are 48 ¹pens. The first 24 are for ²fancy screens
  4346.          (2 bitplanes) and the last 24 are for 1 bitplane screens. Only
  4347.          the first 21 pens are used for both fancy and no-fancy screens.
  4348.          All other pens are reserved for future use.
  4349.          With no arguments this command lists all pens on two lines: the
  4350.          first line containing all pens for fancy screens and the second
  4351.          line for no-fancy screens.
  4352.  
  4353.          Here follow the currently defined ²pen numbers and there default
  4354.          color values. Add 24 to the pen number to get the no-fancy screen
  4355.          pen number (see the 'InstallingPowerVisor' tutor file for the
  4356.          meaning of each pen).
  4357.  
  4358.             nr    name                 default fancy     default no-fancy
  4359.             -------------------------------------------------------------
  4360.             0     BoxBackground        0                 0
  4361.             1     LogWinBackground     0                 0
  4362.             2     NormalText           1                 1
  4363.             3     PrompText            1                 1
  4364.             4     StatusTextInActive   1                 1
  4365.             5     StatusTextActive     2                 0
  4366.             6     InActiveBar          0                 0
  4367.             7     ActiveBar            3                 1
  4368.             8     TopLeft3D            2                 1
  4369.             9     BottomRight3D        1                 1
  4370.             10    BoxLine              1                 1
  4371.             11    PositionBox          0                 0
  4372.             12    TopLeftBox           1                 1
  4373.             13    BottomRightBox       2                 1
  4374.             14    PositionIndicator    3                 1
  4375.             15    SGInActiveText       3                 1
  4376.             16    SGInActiveBackground 0                 0
  4377.             17    SGActiveText         1                 1
  4378.             18    SGActiveBackground   0                 0
  4379.             19    HilightPen           2                 0
  4380.             20    HilightBackPen       0                 1
  4381.  
  4382.    - font [<font name> <size> <style> <flags>]
  4383.          With this command you can install the default font used by
  4384.          PowerVisor. This is topaz.font,8,0,0 by default. <font name>
  4385.          must always end with '.font'. This font is used for all
  4386.          logical windows, for the stringgadget, for the screen titlebar and
  4387.          for the logical window titlebars.
  4388.  
  4389.  
  4390. See the 'InstallingPowerVisor' file for more information.
  4391.  
  4392.  
  4393. Related commands: saveconfig mode
  4394.  
  4395. Related tutor files: InstallingPowerVisor Screen
  4396.  
  4397. ================================== home ======================================
  4398.  
  4399.    HOMe
  4400.  
  4401.  
  4402. Adjust the ²current location on the ³current logical window to the
  4403. ²top location. Note that this is not always the same as 'locate 0,0'
  4404. (see the 'Screen' tutorial file for more info).
  4405. This command also scrolls the logical window to that position
  4406. (in contrast with 'locate').
  4407.  
  4408.  
  4409. Related commands: locate cls print current
  4410.  
  4411. Related functions: getx gety getchar lines cols getlwin
  4412.  
  4413. Related lists: lwin
  4414.  
  4415. Related tutor files: Screen
  4416.  
  4417. ================================== move ======================================
  4418.  
  4419.    MOVe <physical window> <x> <y>
  4420.  
  4421.  
  4422. Move the ²physical window to a specified position. This command only works
  4423. if the physical window is a ²non-backdrop window.
  4424. You can move PowerVisor to another screen with the 'screen' command.
  4425. You can of course also move the ²PowerVisor window using the ²drag gadget.
  4426.  
  4427. 'move' uses ¹autodefault to the 'pwin' list for the first argument.
  4428.  
  4429.  
  4430. Related commands: screen size
  4431.  
  4432. Related lists: pwin
  4433.  
  4434. Related tutor files: Screen
  4435.  
  4436. ================================= scroll =====================================
  4437.  
  4438.    SCROll <logical window> <x> <y>
  4439.  
  4440.  
  4441. Scroll the ²logical window. <x> and <y> is the new ¹top-left visible
  4442. position. This command checks for illegal values.
  4443.  
  4444. 'scroll' uses ¹autodefault to the 'lwin' list for the first argument.
  4445.  
  4446.  
  4447. Related lists: lwin
  4448.  
  4449. Related tutor files: Screen
  4450.  
  4451. ================================= active =====================================
  4452.  
  4453.    Active <logical window>
  4454.  
  4455.  
  4456. Make the ²logical window the active one. The ³active logical window is the
  4457. logical window where you can scroll with the ¹keys. You can also use
  4458. the ¹<tab> key to change the active window. The active logical window is
  4459. also used for input. This means that when a command is waiting for a key
  4460. or for input (using the 'key' function, the 'scan' command or simply because
  4461. the output was to big to fit on one page) input will be locked (prevented)
  4462. unless the active logical window is equal to the logical window where the
  4463. input occured.
  4464.  
  4465. 'active' uses ¹autodefault to the 'lwin' list for the first argument.
  4466.  
  4467.  
  4468. Related commands: current
  4469.  
  4470. Related functions: getlwin
  4471.  
  4472. Related lists: lwin
  4473.  
  4474. Related tutor files: Screen
  4475.  
  4476. ================================= openlw =====================================
  4477.  
  4478.    RC,<lwin> <- OPENLw <physical window> <logwin name> <cols> <rows>
  4479.                 [<brother> <where> [<number of columns or lines>]]
  4480.  
  4481.  
  4482. Open a ²logical window on a ²physical window. If the physical window is empty
  4483. you need not specify the two last arguments. Otherwise <brother> is the
  4484. logical window which will be your brother and <where> specifies where
  4485. our new logical window should appear relative to the <brother>.
  4486. The <where> string can be like :
  4487.  
  4488.    u     above brother
  4489.    d     below brother
  4490.    r     right from brother
  4491.    l     left from brother
  4492.    pd    take parent from brother and appear below this box
  4493.    pppr  take parent from parent from parent and appear right from this box
  4494.    ...
  4495.  
  4496. 'openlw' uses ¹autodefault to the 'pwin' list for the <physical window> arg.
  4497. 'openlw' uses ¹autodefault to the 'lwin' list for the <brother> argument.
  4498.  
  4499. Note that you can open ³standard physical windows with this command as well,
  4500. instead of using the predefined commands (xwin,rwin,awin,owin,dwin,swin).
  4501.  
  4502. If <number of columns or lines> is specified it is used as the number
  4503. of lines or columns for the new logical window (<number of columns or
  4504. lines> is interpreted as <number of columns> if the new window is positioned
  4505. left or right of <brother>, otherwise <number of columns or lines>
  4506. is interpreted as <number of lines>).
  4507.  
  4508. 'rc' and <lwin> are the pointer to the new logical window.
  4509.  
  4510.  
  4511. Example :
  4512.  
  4513. Open the 'Extra' logical window at the left of the 'Main' logical window :
  4514.  
  4515. < openlw main Extra 80 40 main l <enter>
  4516.  
  4517. And to close the logical window :
  4518.  
  4519. < closelw extra <enter>
  4520. or
  4521. < xwin <enter>
  4522.  
  4523.  
  4524. Related commands: closelw awin rwin owin dwin swin xwin openpw closepw
  4525.  
  4526. Related lists: lwin pwin
  4527.  
  4528. Related tutor files: Screen
  4529.  
  4530. ================================= closelw ====================================
  4531.  
  4532.    CLOSELw <logical window>
  4533.  
  4534.  
  4535. Close a ²logical window previously opened with 'openlw' or one of the
  4536. ³standard logical window commands (xwin,rwin,awin,owin,dwin,swin).
  4537. You can't close the 'Main' logical window.
  4538.  
  4539. 'closelw' uses ¹autodefault to the 'lwin' list for the first argument.
  4540.  
  4541.  
  4542. Related commands: openlw awin owin rwin dwin swin xwin openpw closepw
  4543.  
  4544. Related lists: lwin
  4545.  
  4546. Related tutor files: Screen
  4547.  
  4548. ================================= openpw =====================================
  4549.  
  4550.    RC,<pwin> <- OPENPw <physical window name> <x> <y> <w> <y>
  4551.  
  4552.  
  4553. Open a ²physical window. It will be empty (no logical windows).
  4554. You can move and size this window using 'move' and 'size'. When
  4555. you use the 'screen' command to move PowerVisor to another screen,
  4556. all physical windows will automatically move together with the
  4557. 'Main' physical window.
  4558.  
  4559. You can only open 5 additional physical windows since there are only
  4560. 5 ¹signals left. In a later version this limitation could be removed.
  4561.  
  4562. 'rc' and <pwin> are the pointer to the new physical window.
  4563.  
  4564.  
  4565. Related commands: closepw openlw closelw
  4566.  
  4567. Related lists: pwin
  4568.  
  4569. Related tutor files: Screen
  4570.  
  4571. ================================= closepw ====================================
  4572.  
  4573.    CLOSEPw <physical window>
  4574.  
  4575.  
  4576. Close a ²physical window. All ²logical windows on this physical window
  4577. are automatically removed.
  4578. You can't remove the ³'Main' physical window.
  4579.  
  4580. 'closepw' uses ¹autodefault to the 'pwin' list for the first argument.
  4581.  
  4582.  
  4583. Related commands: openpw openlw closelw
  4584.  
  4585. Related lists: pwin
  4586.  
  4587. Related tutor files: Screen
  4588.  
  4589. ================================ setflags ====================================
  4590.  
  4591.    RC,<oldflags> <- SETFLags <logical window> <mask> <flags>
  4592.  
  4593.  
  4594. Set flags for a ²logical window.
  4595. This command also displays the old flags and puts the result in 'rc'.
  4596. Bits in <mask> and <flags> :
  4597.  
  4598.    4   = ²-MORE- enabled (1 is enabled)
  4599.    32  = ¹real-top (1 is real-top)
  4600.    64  = ¹statusline off (1 is off)
  4601.    128 = ¹interrupt off (1 is off)
  4602.    256 = ³auto output snap (1 if on)
  4603.  
  4604. Note that it is generally better to use 'prefs' for the standard logical
  4605. windows instead of 'setflags'. This is because the value made with 'setflags'
  4606. are reset everytime a new logical window is created or another logical window
  4607. disappears. The problem with 'prefs' is that you first have to reopen the
  4608. logical window before it has effect. If you use both (you can make a
  4609. script or alias for that) there is no problem.
  4610.  
  4611. 'setflags' uses ¹autodefault to the 'lwin' list for the first argument.
  4612.  
  4613.  
  4614. Example :
  4615.  
  4616. < setflags main 32+4 32 <enter>
  4617. > 00000106 , 262
  4618.  
  4619. will make the logical window real-top and disableds -MORE- checking.
  4620. 262 is the old value.
  4621.  
  4622. To get the current value, type :
  4623.  
  4624. < setflags main 0 0 <enter>
  4625. > 00000122 , 290
  4626.  
  4627.  
  4628. Related commands: openlw closelw awin owin rwin dwin swin xwin prefs
  4629.  
  4630. Related lists: lwin
  4631.  
  4632. Related tutor files: Screen
  4633.  
  4634. =================================== for ======================================
  4635.  
  4636.    FOR <listname> <command>
  4637.  
  4638.  
  4639. For each element in list <listname> execute <command>.
  4640. The command is executed with the pointer to the current element from the
  4641. list in the ²'rc' variable.
  4642.  
  4643. Warning ! Don't use commands that may cause the removal of some of the
  4644. elements in the list.
  4645.  
  4646.  
  4647. Example :
  4648.  
  4649. < for task disp rc <enter>
  4650. > 07E2D4B0 , 132306096
  4651. > 07E4DE50 , 132439632
  4652. > 07E5CBB0 , 132500400
  4653. > 07E1C418 , 132236312
  4654. > 07E49DB8 , 132423096
  4655. > 07E1B788 , 132233096
  4656. > 07E62768 , 132523880
  4657. > 07E1D510 , 132240656
  4658. > 07E60860 , 132515936
  4659. > 07E0AF7A , 132165498
  4660. > 07E4CD20 , 132435232
  4661. > 07E08000 , 132153344
  4662. > 07E07C68 , 132152424
  4663. > 07E70388 , 132580232
  4664. > 07EB4F48 , 132861768
  4665. > 07E0DEE0 , 132177632
  4666. > 07E13880 , 132200576
  4667. > 07E15D00 , 132209920
  4668. > 07E339D0 , 132331984
  4669. > 07E0C6E4 , 132171492
  4670. > 07E4FEE8 , 132447976
  4671. > 07E06362 , 132146018
  4672. > 07E21B28 , 132258600
  4673. > 07EB5948 , 132864328
  4674.  
  4675. displays all pointer to tasks.
  4676.  
  4677. To count all resident modules for example, use :
  4678.  
  4679. < {a=0;for resm a=a+1;disp a} <enter>
  4680. > 0000002A , 42
  4681.  
  4682.  
  4683. Related commands: list
  4684.  
  4685. Related tutor files: Lists LookingAtThings
  4686.  
  4687. ================================= pvcall =====================================
  4688.  
  4689.    <result> <- PVcall <number> [<arguments>]
  4690.  
  4691.  
  4692. Call ³internal PowerVisor functions. This command is only useful for the
  4693. very experienced PowerVisor user. See the 'TheWizardCorner' file for
  4694. more info.
  4695.  
  4696.  
  4697. Related tutor files: TheWizardCorner Scripts
  4698.  
  4699. ================================= dscroll ====================================
  4700.  
  4701.    DScroll <offset>
  4702.  
  4703.  
  4704. ¹Scroll <offset> bytes up in the ²fullscreen debugger. You can only use this
  4705. command when the ³'Debug' logical window is open (with 'dwin'). <offset>
  4706. can be negative. PowerVisor will always convert <offset> to a multiple
  4707. of a word.
  4708.  
  4709. You can also scroll in the debug display with the 'Ctrl' key in combination
  4710. with the following keypad ¹keys :
  4711.  
  4712.    8 (up)      scroll 2 bytes up
  4713.    2 (down)    scroll 2 bytes down
  4714.    9 (PgUp)    scroll 20 bytes up
  4715.    3 (PgDn)    scroll 20 bytes down
  4716.    5           scroll to programcounter (use 'dstart' to simulate this)
  4717.  
  4718.  
  4719. Related commands: dstart debug trace break dwin
  4720.  
  4721. Related functions: toppc botpc
  4722.  
  4723. Related lists: lwin dbug
  4724.  
  4725. Related tutor files: Debug
  4726.  
  4727. ================================= dstart =====================================
  4728.  
  4729.    DSTart <address>
  4730.  
  4731.  
  4732. Set the start of the debug logical window. You can only use this
  4733. command when the ³'Debug' logical window is open (with 'dwin').
  4734.  
  4735.  
  4736. Related commands: dscroll debug trace break dwin
  4737.  
  4738. Related functions: toppc botpc
  4739.  
  4740. Related lists: lwin dbug
  4741.  
  4742. Related tutor files: Debug
  4743.  
  4744. ================================= libfunc ====================================
  4745.  
  4746.    LIBFunc <library> <offset>
  4747.  
  4748.  
  4749. This command shows you the name of the ²library function corresponding
  4750. with a library and an offset (offset must be negative).
  4751. You must have loaded the corresponding ¹fd-file first.
  4752. Note that only the 16 least significant bits of <offset> are used so
  4753. it is safe to use $ffe2 for example.
  4754.  
  4755. This command looks a bit like the reverse of 'libinfo'.
  4756.  
  4757. 'libfunc' uses ¹autodefault to the 'libs' list for the <library> argument.
  4758.  
  4759. This command returns a string if called from ¹ARexx.
  4760.  
  4761.  
  4762. Related commands: libinfo loadfd unloadfd
  4763.  
  4764. Related lists: fdfi libs
  4765.  
  4766. ================================= usetag =====================================
  4767.  
  4768.    USetag <number>
  4769.  
  4770.  
  4771. Set the ³current tag list to <number> (0 .. 15). The current tag list is
  4772. used by all tag commands and by 'view'. The default current tag list
  4773. is 0.
  4774.  
  4775. You can also use 'tg' to temporarily set the current tag list.
  4776.  
  4777.  
  4778. Related commands: tg addtag remtag tags savetags loadtags view
  4779.  
  4780. Related functions: taglist
  4781.  
  4782. Related tutor files: LookingAtThings
  4783.  
  4784. =================================== tg =======================================
  4785.  
  4786.    TG <number> <command>
  4787.  
  4788.  
  4789. Temporarily set the ³current tag list to <number> and execute the command.
  4790. <number> is in 0 .. 15.
  4791.  
  4792.  
  4793. Related commands: usetag addtag remtag tags savetags loadtags view
  4794.  
  4795. Related functions: taglist
  4796.  
  4797. Related tutor files: LookingAtThings
  4798.